/* A product-led extension of Sunstead's warm, quiet public site. */
body[data-page="shop"] .site-header{border-bottom:1px solid var(--line)}
body[data-page="shop"] .site-header a[aria-current="page"]{color:var(--blue);text-decoration:underline;text-underline-offset:7px}
.shop-main{padding-top:45px;padding-bottom:65px}
.shop-intro{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:38px}
.shop-intro .eyebrow{margin-bottom:15px;color:#776639}
.shop-intro h1{font-size:clamp(40px,4.3vw,60px);line-height:1.08;letter-spacing:-.047em}
.shop-intro>p{font-size:16px;line-height:1.85;color:var(--muted);max-width:38ch;padding-bottom:4px}
.shop-product{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:50px;align-items:start}
.shop-image-frame{overflow:hidden;border-radius:4px;background:#e8e3d9}
.shop-image-frame img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.shop-image-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:17px}
.shop-image-controls>span{font-size:13px;color:var(--muted)}
.shop-theme{display:flex;border:1px solid #d7d9d5;border-radius:999px;padding:3px;gap:2px;background:#f0eee8}
.shop-theme button{border:0;border-radius:999px;background:transparent;color:var(--muted);padding:5px 15px;font-size:12px;min-height:32px}
.shop-theme button[aria-pressed="true"]{background:#fffdf9;color:var(--ink);box-shadow:0 1px 4px #102b4a12}
.shop-gallery figcaption{color:#6a726f;font-size:11px;line-height:1.65;max-width:66ch;margin-top:13px}
.shop-story{padding:40px 0 0;max-width:49ch}
.shop-story .eyebrow{margin-bottom:13px}
.shop-story h2{font-size:32px;line-height:1.22}
.shop-story>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.85;margin-top:18px}
.shop-story .quiet-link{font-size:13px;color:var(--blue);margin-top:14px}
.shop-config{padding:0 0 0 32px;border-left:1px solid var(--line);scroll-margin-top:24px}
.shop-config-heading .eyebrow{color:var(--muted);font-size:10px}
.shop-config-heading h2{font-size:33px;margin:9px 0 7px}
.shop-config-heading>p:last-child{color:var(--muted);font-size:13px}
.shop-config-heading .shop-preorder{font-size:11px;color:#786329;border-left:2px solid var(--yellow);padding-left:11px;margin-top:16px;line-height:1.7}
.shop-preorder small{display:block;font-size:10px;color:var(--muted)}
.shop-fieldset{border:0;padding:0;margin:23px 0 0;min-width:0}
.shop-fieldset legend{padding:0 0 9px;font-size:13px;font-weight:600;line-height:1.5}
.shop-choice-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.shop-choice{display:block;position:relative;cursor:pointer;min-width:0}
.shop-choice input{position:absolute;opacity:0;width:1px;height:1px}
.shop-choice>span{display:block;min-height:67px;padding:12px 13px;border:1px solid #ccd2d6;border-radius:7px;font-size:13px;line-height:1.5;background:#fdfbf7;transition:border-color .15s,background .15s}
.shop-choice small{display:block;font-size:11px;color:var(--muted);margin-top:3px;line-height:1.45}
.shop-choice:hover>span{border-color:#7a9abe}
.shop-choice input:checked+span{border-color:var(--blue);background:#edf3f9;box-shadow:inset 0 0 0 1px var(--blue)}
.shop-choice input:focus-visible+span{outline:3px solid var(--blue);outline-offset:4px}
.shop-field-help{color:var(--muted);font-size:11px;line-height:1.7;margin-top:10px}
.shop-summary{border-top:1px solid var(--line);margin-top:26px;padding-top:19px}
.shop-summary h3{font-size:15px;font-weight:600;letter-spacing:0}
.shop-summary ul{list-style:none;padding:0;margin:11px 0 0}
.shop-summary li{display:flex;justify-content:space-between;gap:17px;font-size:12px;line-height:1.7;color:var(--muted);padding:3px 0}
.shop-summary li strong{color:var(--ink);white-space:nowrap;font-weight:500}
.shop-total{display:flex;justify-content:space-between;align-items:baseline;gap:18px;margin-top:17px}
.shop-total>span{font-size:14px}
.shop-total small{font-size:10px;color:var(--muted);margin-left:4px}
.shop-total output{font-size:34px;letter-spacing:-.04em;line-height:1.2;font-weight:500}
.shop-charge-note{font-size:11px;line-height:1.6;color:var(--muted);margin-top:8px}
.shop-availability{background:#f0ede4;border-radius:5px;padding:11px 13px;color:#655b43;font-size:12px;line-height:1.7;margin-top:20px}
.shop-availability.is-open{color:var(--muted);background:none;padding:0}
.shop-checkout{width:100%;margin-top:12px;justify-content:space-between;font-size:14px}
.shop-checkout:disabled{cursor:not-allowed;background:#dbe1e5;border-color:#dbe1e5;color:#526277;opacity:1;box-shadow:none}
.shop-checkout[aria-busy="true"]{cursor:wait}
.shop-checkout-note{font-size:10px;color:var(--muted);text-align:center;margin-top:10px}
.shop-error{font-size:12px;line-height:1.7;color:#a03c37;margin-top:12px}
.shop-notice{padding:20px 24px;border:1px solid #bfd0df;border-radius:8px;background:#edf3f9;margin-bottom:30px;font-size:14px;line-height:1.8}
.shop-notice h2{font-size:24px;margin-bottom:7px}
.shop-family{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;border-top:1px solid var(--line);margin-top:64px;padding-top:44px}
.shop-family .eyebrow{margin-bottom:14px}
.shop-family h2{font-size:34px}
.shop-family>div>p:last-child{font-size:14px;color:var(--muted);line-height:1.85;margin-top:16px;max-width:38ch}
.shop-price-table table{width:100%;border-collapse:collapse;text-align:left}
.shop-price-table th,.shop-price-table td{border-bottom:1px solid var(--line);padding:15px 12px;font-size:14px;font-weight:500}
.shop-price-table th:first-child{padding-left:0}
.shop-price-table thead th{font-size:12px;color:var(--muted);padding-top:0;font-weight:500}
.shop-price-table th small{display:block;color:var(--muted);font-size:11px;font-weight:400;margin-top:2px}
.shop-price-table td button{border:0;border-bottom:1px solid #7e9abd;background:transparent;color:var(--blue);font-size:22px;letter-spacing:-.03em;padding:2px 0;line-height:1.5}
.shop-price-table td button:hover{color:var(--ink);border-color:var(--ink)}
.shop-price-table>p{font-size:11px!important;margin-top:12px!important;max-width:none!important}
.shop-connected{margin-top:56px;padding:34px;background:#edf0ea;border-radius:7px;display:grid;grid-template-columns:.9fr 1.4fr;gap:44px;align-items:center}
.shop-connected-intro .eyebrow{font-size:10px;margin-bottom:14px}
.shop-connected h2{font-size:31px}
.shop-connected-intro>p:last-child{font-size:13px;color:var(--muted);margin-top:15px;line-height:1.8;max-width:35ch}
.shop-role-flow{display:grid;grid-template-columns:1fr 52px 1fr;align-items:start;gap:10px}
.shop-role-flow article{min-width:0}
.shop-role-icon{display:flex;align-items:center;justify-content:center;background:#f6e9b6;width:58px;height:58px;border-radius:13px;color:#82661d;margin-bottom:15px}
.shop-role-home{background:#d9e6f4;color:#365d89}
.shop-role-flow h3{font-size:22px}
.shop-role-flow p{font-size:12px;color:var(--muted);line-height:1.8;margin-top:10px}
.shop-link-line{display:flex;align-items:center;gap:4px;color:#738986;margin-top:24px}
.shop-link-line span{height:1px;background:#a5b3a6;flex:1}
.shop-link-line svg{flex-shrink:0}
.shop-before{margin-top:53px;display:grid;grid-template-columns:1fr 1.2fr;gap:70px}
.shop-before h2{font-size:29px;line-height:1.3;max-width:15ch}
.shop-before details{border-bottom:1px solid var(--line);padding:15px 0}
.shop-before details:first-child{padding-top:0}
.shop-before summary{cursor:pointer;font-size:14px;font-weight:500;list-style-position:outside;margin-left:17px;padding-left:4px}
.shop-before details p{font-size:13px;color:var(--muted);line-height:1.9;margin-top:13px}
.shop-before a{text-decoration:underline;text-underline-offset:4px;color:var(--blue)}
.shop-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){.shop-product{gap:30px;grid-template-columns:1.05fr 1fr}.shop-config{padding-left:24px}.shop-choice>span{padding:11px;font-size:12px}.shop-choice small{font-size:10px}.shop-family,.shop-before{gap:40px}.shop-connected{gap:30px;grid-template-columns:.8fr 1.3fr;padding:28px}.shop-role-flow{grid-template-columns:1fr 30px 1fr;gap:6px}.shop-intro>p{font-size:14px;max-width:32ch}.shop-intro>p br{display:none}}
@media(max-width:800px){.shop-main{padding-top:30px}.shop-intro{align-items:start;gap:25px}.shop-intro h1{font-size:45px}.shop-intro>p{max-width:28ch;padding-top:34px}.shop-product{grid-template-columns:1fr 1fr;gap:24px}.shop-config{padding-left:20px}.shop-choice-row{gap:7px}.shop-choice>span{font-size:11px;padding:10px 8px;min-height:64px}.shop-config-heading h2{font-size:29px}.shop-fieldset{margin-top:19px}.shop-image-controls>span{display:none}.shop-image-controls{justify-content:end}.shop-story{padding-top:26px}.shop-story h2{font-size:28px}.shop-story>p:not(.eyebrow){font-size:13px}.shop-family{gap:30px;grid-template-columns:.8fr 1.2fr}.shop-family h2{font-size:29px}.shop-price-table th,.shop-price-table td{padding-inline:8px}.shop-connected{grid-template-columns:1fr;gap:27px}.shop-connected-intro{max-width:none}.shop-connected-intro>p:last-child{max-width:52ch}.shop-role-flow{grid-template-columns:1fr 70px 1fr;gap:20px}.shop-before{gap:30px;grid-template-columns:.8fr 1.2fr}.shop-before h2{font-size:26px}}
@media(max-width:600px){body[data-page="shop"] .site-header>nav[aria-label="Main navigation"]{display:flex;margin-left:auto}body[data-page="shop"] .site-header>nav a[aria-current="page"]{display:block}body[data-page="shop"] .site-header .nav-account{margin-left:0}.shop-main{padding-top:27px;padding-bottom:40px}.shop-intro{display:block;margin-bottom:25px}.shop-intro .eyebrow{font-size:9px;margin-bottom:13px}.shop-intro h1{font-size:43px}.shop-intro>p{font-size:14px;padding:0;margin-top:17px;max-width:36ch}.shop-product{display:flex;flex-direction:column;gap:31px}.shop-gallery,.shop-config{width:100%}.shop-image-controls>span{display:block;font-size:11px}.shop-image-controls{justify-content:space-between;margin-top:12px}.shop-theme button{font-size:11px;padding-inline:13px}.shop-gallery figcaption{font-size:10px;line-height:1.7;margin-top:10px}.shop-story{display:none}.shop-config{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.shop-config-heading h2{font-size:32px}.shop-choice>span{font-size:13px;padding:12px;min-height:68px}.shop-choice small{font-size:11px}.shop-fieldset{margin-top:22px}.shop-fieldset legend{font-size:13px}.shop-total output{font-size:35px}.shop-checkout{min-height:49px}.shop-family{display:block;margin-top:39px;padding-top:31px}.shop-family h2{font-size:31px}.shop-family>div>p:last-child{font-size:13px;max-width:37ch}.shop-price-table{margin-top:29px}.shop-price-table thead th{font-size:11px}.shop-price-table th,.shop-price-table td{font-size:13px;padding:14px 7px}.shop-price-table td button{font-size:23px}.shop-price-table th small{font-size:10px}.shop-connected{margin-top:37px;padding:25px 21px;gap:27px}.shop-connected h2{font-size:29px}.shop-role-flow{grid-template-columns:1fr 28px 1fr;gap:9px}.shop-role-flow h3{font-size:20px}.shop-role-flow p{font-size:11px}.shop-link-line{margin-top:22px}.shop-role-icon{width:52px;height:52px}.shop-before{display:block;margin-top:34px}.shop-before h2{font-size:28px;max-width:17ch;margin-bottom:27px}.shop-before summary{font-size:13px}.shop-before details p{font-size:12px}.shop-notice{padding:17px;font-size:13px}.shop-notice h2{font-size:22px}.shop-checkout-note{font-size:10px}}
