/* LORIEN 2026: quiet surfaces, clearer purchase hierarchy, comfortable touch targets. */
:root{--lorien-ink:#26392d;--lorien-line:#e2e5dd;--lorien-paper:#fafaf7}
body{background:var(--lorien-paper)}
.site-header{background:rgba(250,250,247,.97);border-bottom:1px solid var(--lorien-line)}
.header-right{gap:16px}
.language-switcher{position:relative;flex:none;z-index:110;letter-spacing:0;font-family:inherit}
.language-switcher>summary{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 9px;cursor:pointer;list-style:none;font-size:11px;font-weight:650;white-space:nowrap;border-radius:8px}
.language-switcher>summary::-webkit-details-marker{display:none}
.language-switcher>summary::after{display:none;content:none}
.language-switcher>summary:hover,.language-switcher[open]>summary{background:#ecefe8}
.language-switcher svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.4}
.language-switcher nav{position:absolute;right:0;top:calc(100% + 8px);width:190px;padding:6px;background:#fff;border:1px solid var(--lorien-line);border-radius:12px;box-shadow:0 12px 40px #26392d18;display:grid;gap:2px}
.language-switcher nav a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:44px;padding:10px 12px;border-radius:7px;text-decoration:none;font-size:13px;font-weight:500;color:#26392d}
.language-switcher nav small{font-size:10px;color:#6b766b}
.language-switcher a:hover,.language-switcher a[aria-current="true"]{background:#eef2e8}
:focus-visible{outline:2px solid #536f48;outline-offset:4px}
.pdp{max-width:1440px;margin-inline:auto;padding-top:25px}
.pdp-grid{gap:clamp(30px,5vw,80px);align-items:start}
.pdp-gallery{min-width:0;position:sticky;top:96px}
.pdp-main-image{position:relative;background:#efeee8;border:1px solid #e7e7df;border-radius:16px;overflow:hidden;cursor:zoom-in;touch-action:pan-y}
.pdp-main-image::after{content:'↗';position:absolute;bottom:18px;right:18px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#fffffff0;color:#31432e;font-size:19px;pointer-events:none}
.pdp-main-image img{object-fit:contain}
.gallery-switches{gap:9px;justify-content:flex-start;padding-block:5px;overflow-x:auto;scrollbar-width:thin}
.gallery-switches button{min-width:64px;width:72px;height:86px;border-radius:8px;overflow:hidden;border:1px solid #dfe3d8;opacity:.75;flex:none}
.gallery-switches button.selected{opacity:1;border:2px solid #314c36}
.gallery-switches button img{object-fit:cover}
.image-caption{color:#64705f;font-size:12px;padding-block:10px}
.pdp-info{position:static;padding-block:6px}
.pdp-info h1{font-size:clamp(30px,3.1vw,46px);line-height:1.1;letter-spacing:-.04em;max-width:20ch}
.pdp-tagline{color:#626d5d;line-height:1.6;max-width:44ch}
.pdp-price{margin:20px 0 16px;font-size:28px;letter-spacing:-.025em}
.pdp-benefits{line-height:1.6}
.pdp-rating{display:flex;align-items:center;gap:9px;padding:5px 0;margin:8px 0 4px;background:none;border:0;min-height:32px;font:inherit;font-size:12px;cursor:pointer;text-align:left;color:#5c6656;flex-wrap:wrap}
.pdp-rating[hidden]{display:none}
.pdp-rating-stars{color:transparent;background:linear-gradient(90deg,#8a702d var(--rating-fill,100%),#d8dcce var(--rating-fill,100%));background-clip:text;letter-spacing:.04em;font-size:15px}
.pdp-rating strong{font-weight:650;color:#26392d}
.delivery-inline{margin:16px 0;padding:11px 14px;border-radius:8px;background:#edf2e7;color:#365035;font-size:13px;border:0;line-height:1.55}
.option-group{margin-top:23px}
.size-heading{align-items:center;gap:10px}
.size-guide-button{min-height:44px;text-underline-offset:4px;font-size:12px}
.size-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}
.size-choice{min-width:0;min-height:47px;width:100%;border-radius:7px;background:#fff;font-size:13px}
.size-choice.selected{background:var(--lorien-ink);color:#fff;border-color:var(--lorien-ink)}
.size-choice.sold-out{color:#72776c;background:#f0f0eb;opacity:1}
.size-choice.sold-out.selected{background:#e4e9de;color:#26392d}
.color-choice{width:44px;height:44px;min-width:44px;min-height:44px}
.restock-hint{gap:4px;font-size:11px;line-height:1.55;color:#72786a;margin-top:12px}
.restock-hint strong{font-weight:500}
.pdp-add{gap:12px;margin-top:24px}
.pdp-add .quantity-control{width:116px;min-width:116px}
.pdp-add .quantity-control button{min-width:44px}
.pdp-add>.button{min-height:55px;border-radius:8px;background:var(--lorien-ink);color:#fff;font-weight:600}
.pdp-add>.button:hover{background:#3c513d}
.quantity-control{border-radius:8px;overflow:hidden;min-height:55px;background:#fff}
.quantity-control button{min-width:36px;min-height:44px}
.purchase-assurance{border:1px solid var(--lorien-line);border-radius:12px;background:#fff;margin:18px 0 24px;padding:2px 16px}
.purchase-assurance>div,.purchase-assurance>a{display:flex;align-items:center;gap:13px;min-height:65px;padding:12px 0;text-decoration:none;color:#334332}
.purchase-assurance>*+*{border-top:1px solid #eceee7}
.purchase-assurance svg{width:21px;height:21px;flex:none;stroke:currentColor;stroke-width:1.4;fill:none}
.purchase-assurance p{display:grid;gap:4px;margin:0;flex:1;line-height:1.35}
.purchase-assurance strong{font-size:13px;font-weight:600}
.purchase-assurance small{font-size:11px;color:#727b6b}
.pdp-bundle-callout,.winter-tee-callout,.winter-pair-callout{border-radius:10px}
.details-list{margin-top:24px}
.details-list summary{min-height:52px;display:flex;align-items:center;font-size:14px}
.details-list p{font-size:13px;line-height:1.8}
.customer-reviews{background:#f0f2eb;scroll-margin-top:100px}
.customer-review-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;align-items:stretch}
.customer-review-card{border-radius:14px;border:1px solid #dfe4d8;box-shadow:0 4px 18px #34432a03}
.customer-review-comment{font-size:14px;line-height:1.8}
.customer-review-translation{display:block;min-height:44px;margin-top:7px;padding:7px 0;font:inherit;font-size:11px;line-height:1.5;color:#64715d;text-align:left;text-decoration:underline;text-underline-offset:3px}
.customer-review-translation[hidden]{display:none}
.customer-review-stars{color:#8a702d;font-size:16px;letter-spacing:.04em}
.customer-review-source{border-top:1px solid #eceee6;padding-top:13px;line-height:1.6}
.customer-review-photo{height:220px;object-fit:contain}
.product-card{border-radius:10px;overflow:hidden}
.product-card img{transition:transform .3s ease}
.drawer .button,.checkout-form .button{border-radius:7px}
.photo-dialog{border:0;padding:0;background:#f2f2ec;max-width:94vw;max-height:94dvh;border-radius:14px;overflow:auto}
.photo-dialog::backdrop{background:#18251bdd;backdrop-filter:blur(4px)}
.photo-dialog img{display:block;max-width:94vw;max-height:91dvh;width:auto;height:auto;object-fit:contain}
.photo-close{position:fixed;z-index:2;right:4vw;top:4vh;width:44px;height:44px;border:1px solid #d7ddcf;border-radius:50%;background:#fff;color:#26392d;font-size:27px;cursor:pointer}
@media(min-width:1101px) and (max-width:1390px){.desktop-nav{gap:16px}.desktop-nav a{font-size:12px}.header-right{gap:8px}.desktop-help{display:none}}
@media(max-width:760px){
 .header-right{gap:2px}.language-switcher>summary{gap:4px;padding-inline:6px;font-size:10px}.language-switcher svg{width:15px;height:15px}.header-right .lp-nav{display:none}
 .pdp{padding-top:14px}.pdp-grid{gap:20px}.pdp-gallery{position:relative;top:auto}
 .pdp .pdp-main-image{margin:0;border-radius:12px;aspect-ratio:1/1;max-height:50svh}.pdp-main-image img{object-fit:contain;max-height:50svh}
 .pdp .image-caption{display:none}
 .gallery-switches button{width:60px;height:70px;min-width:60px}.image-caption{padding-block:8px}
 .pdp .pdp-info{padding-top:0;margin-top:22px}.pdp-info h1{font-size:30px;line-height:1.12}.pdp-info .eyebrow{margin-bottom:9px}.pdp-tagline{font-size:13px;margin-top:10px}
 .pdp-price{font-size:26px;margin-block:15px}.option-group{margin-top:17px}.pdp-add{margin-top:18px}
 .pdp-benefits{font-size:10px}.purchase-assurance{padding-inline:14px;margin-top:14px}.purchase-assurance>div,.purchase-assurance>a{min-height:63px}
 .customer-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-review-body{padding:17px}
 .mobile-buy{padding:12px 18px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #dee3d6;background:#fafaf7f5;backdrop-filter:blur(12px);box-shadow:0 -4px 25px #283b2a09;gap:10px;transition:transform .18s ease,visibility .18s ease}
 .mobile-buy .button{border-radius:7px;min-height:45px;font-size:12px;white-space:normal;line-height:1.3}
 .mobile-buy.primary-visible{transform:translateY(110%);visibility:hidden;pointer-events:none}
 .site-footer{padding-bottom:110px}
 input,select,textarea{font-size:16px}
}
@media(max-width:520px){.customer-review-grid{grid-template-columns:1fr}.customer-review-photo{max-height:300px}.pdp{padding-inline:18px}.pdp-main-image{aspect-ratio:4/5;max-height:56svh}.size-options{gap:6px}.size-choice{min-height:46px}.pdp-add{gap:8px}.pdp-add>.button{font-size:13px}.quantity-control button{min-width:32px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}.product-card img,.mobile-buy{transition:none}}
@media(max-width:360px){.site-header .wordmark-logo{height:34px!important}}
@media print{.language-switcher,.photo-dialog{display:none!important}}
.essential-model-options .hoodie-pocket-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.essential-model-options .hoodie-pocket-choice{min-width:0;min-height:62px;padding:12px 14px;border-radius:12px;justify-content:center}
.essential-model-options .hoodie-pocket-choice strong{line-height:1.35}
.essential-model-options .hoodie-pocket-choice:focus-visible{outline:2px solid #233d2d;outline-offset:3px}


/* Essential offers: quantities and unit prices stay legible on narrow screens. */
.essential-offer-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0 20px}
.essential-offer-links a{display:flex;flex-direction:column;gap:7px;min-width:0;border:1px solid #d8ddcf;background:#fff;padding:14px 10px;border-radius:10px;text-decoration:none;line-height:1.3;transition:background .15s ease,border-color .15s ease}
.essential-offer-links a>span{font-size:12px;color:#54634c}
.essential-offer-links strong{font-size:19px;letter-spacing:-.035em;white-space:nowrap}
.essential-offer-links small{font-size:10px;color:#63705b;line-height:1.5}
.essential-offer-links a:hover{background:#f0f3e9;border-color:#839277}
.essential-offer-links a[aria-current="page"]{background:#eaf0e1;border:2px solid #536b43;padding:13px 9px}
.essential-offer-links a[aria-current="page"]>span{font-weight:700;color:#314528}
.essential-photos{border-radius:14px}
.essential-photos-triple{grid-template-columns:repeat(3,minmax(0,1fr))}
.essential-selection-progress{margin:24px 0 16px;padding:16px;background:#eff2e9;border:1px solid #dce3d2;border-radius:12px}
.essential-selection-progress>p{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;margin:0 0 12px}
.essential-selection-progress>p>strong{font-size:14px;font-variant-numeric:tabular-nums}
.essential-step-links{display:flex;gap:8px}
.essential-step-links button{flex:1;min-width:0;display:flex;align-items:center;gap:8px;text-align:left;padding:10px 8px;min-height:54px;border:1px solid #d8dfd0;background:#fff;border-radius:8px;font:inherit;font-size:11px;color:inherit;cursor:pointer}
.essential-step-links button>span:last-child{min-width:0;overflow-wrap:anywhere}
.essential-step-links small{display:block;font-size:10px;margin-top:3px;line-height:1.3;color:#65745b}
.essential-step-number{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:50%;background:#edf0e7;font-size:11px}
.essential-step-links .is-complete{border-color:#8a9e78}
.essential-step-links .is-complete .essential-step-number{background:#3c5430;color:#fff}
.essential-piece{border:1px solid #e0e5d8;border-radius:12px;padding:18px;margin-bottom:12px;background:#fff}
.essential-piece .pack-field[id^="piece-size-group"]{scroll-margin:120px 0}
.essential-sticky{box-shadow:0 -5px 25px #26392d0d;background:#fafaf7f5;backdrop-filter:blur(12px)}
.essential-sticky .button{border-radius:8px;min-height:46px;white-space:normal;line-height:1.3}
.pdp-info .purchase-assurance{margin-bottom:20px}
@media(max-width:800px){
 .essential-page{padding-inline:18px}
 .essential-layout{gap:24px}
 .essential-visual{position:static}
 .essential-photos img{max-height:37svh;object-fit:cover;object-position:center 25%}
 .essential-photos figcaption{padding:9px 10px;font-size:11px}
 .essential-fabric{font-size:10px;padding-top:10px;line-height:1.6}
 .essential-config h1{font-size:34px;line-height:1.08;letter-spacing:-.03em}
 .essential-config .eyebrow{margin-bottom:10px}
 .essential-intro{font-size:13px;line-height:1.6}
 .essential-offer{margin-top:16px;padding:16px;border-radius:8px;gap:16px}
 .essential-offer>strong{font-size:28px}
 .essential-piece{padding:14px}
 .essential-piece-heading{flex-wrap:wrap;gap:0 10px}
 .essential-piece-heading .text-link{white-space:normal}
 .essential-sticky{padding:12px 18px calc(12px + env(safe-area-inset-bottom));gap:10px}
 .essential-sticky>div{min-width:0}
 .essential-sticky .button{max-width:58%;font-size:12px;padding-inline:14px}
 .essential-step-links{gap:6px}
 .essential-step-links button{gap:5px;padding-inline:6px}
 .checkout-trust{gap:12px;padding-block:14px}
}
@media(max-width:380px){.essential-offer-links{gap:6px}.essential-offer-links strong{font-size:17px}.essential-offer-links a>span{font-size:11px}.essential-offer-links a{padding-inline:8px}.essential-offer-links a[aria-current="page"]{padding-inline:7px}.essential-step-number{width:18px;height:18px}}
@media(max-width:760px){
 .checkout{padding-top:20px}
 .checkout h1{font-size:34px;margin-bottom:18px}
 .checkout .checkout-trust{margin-block:12px;padding-block:10px;gap:8px}
 .checkout .checkout-trust li{padding:4px 0;gap:7px}
 .checkout .checkout-summary{padding:14px 16px;border:1px solid #e2e5db;border-radius:10px}
 .checkout-order-details>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 10px;padding:3px 22px 3px 0;min-height:56px}
 .checkout-order-details>summary>span{font-size:12px;line-height:1.5}
 .checkout-order-details>summary>strong{font-size:17px;white-space:nowrap}
 .checkout-order-details>summary>small{grid-column:1/-1;font-size:11px}
 .checkout-order-details>summary:after{top:0;right:0}
 .checkout-layout{gap:22px}
}
