@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,400;1,400&display=swap');

:root {
  --serra-soft-ivory:#f3e7d7; --serra-second-skin-sand:#d8c2a5; --serra-taupe:#88775a;
  --serra-deep-cocoa:#493f33; --serra-comfort-sage:#87917b; --serra-warm-clay:#c77e61;
  --ink:var(--serra-deep-cocoa); --linen:var(--serra-soft-ivory); --white:#fff9f1; --fog:#6e6253; --blush:var(--serra-second-skin-sand);
  --charcoal:var(--serra-deep-cocoa); --sage:var(--serra-comfort-sage); --sage-dark:#626b58; --blue:var(--serra-taupe);
  --forest:var(--serra-deep-cocoa); --ember:var(--serra-warm-clay); --line:#cbb99f; --focus:#9b4f38;
  --sans:'DM Sans',ui-sans-serif,system-ui,sans-serif;
  --serif:'Playfair Display',Georgia,serif;
  --page:min(1280px,calc(100% - 48px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--linen);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55;letter-spacing:.025em}
body:has(dialog[open]){overflow:hidden}
button,input,select{font:inherit;color:inherit}
button,a{touch-action:manipulation}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
svg{display:block;fill:none;stroke:currentColor;stroke-width:1.6}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.skip-link{position:fixed;z-index:1000;left:16px;top:-80px;padding:12px 18px;background:var(--white);border:1px solid var(--ink)}
.skip-link:focus{top:16px}
.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}
.announcement{background:var(--blush);border-bottom:2px solid var(--ember);padding:8px 16px;text-align:center;font-size:12px;letter-spacing:.14em}
.site-header{height:78px;width:var(--page);margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);position:relative;z-index:20}
.primary-nav,.header-actions{display:flex;align-items:center;gap:26px}
.primary-nav a,.text-action{font-size:13px;background:none;border:0;padding:8px 0}
.primary-nav a:hover,.text-action:hover{border-bottom:1px solid var(--ink)}
.wordmark{font-family:var(--serif);font-size:28px;letter-spacing:.18em;margin-left:.18em}
.brand-logo-link{display:block;line-height:0;margin:0;overflow:hidden}
.brand-logo{display:block;object-fit:contain;background:var(--linen)}
.site-header>.brand-logo-link{width:90px;height:74px}
.brand-logo-header{width:128px;height:128px;transform:translate(-19px,-27px)}
.header-actions{justify-content:flex-end;gap:15px}
.icon-button{position:relative;border:0;background:transparent;padding:8px;width:38px;height:38px}
.icon-button svg{width:22px;height:22px}
.menu-button{display:none}
.cart-count{position:absolute;right:0;top:0;display:grid;place-items:center;width:19px;height:19px;border-radius:999px;background:var(--ember);color:white;font-size:11px;font-weight:600}
.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.15em;margin:0 0 12px;font-weight:500}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.01em;line-height:1.12}
h1{font-size:clamp(38px,5vw,64px);margin-bottom:20px}
h2{font-size:clamp(32px,4vw,48px);margin-bottom:16px}
h3{font-size:18px;line-height:1.35}
.hero{width:var(--page);min-height:660px;margin:24px auto 0;display:grid;grid-template-columns:1fr 1fr;position:relative;overflow:hidden;background:var(--blush)}
.hero-visual{min-height:660px;position:relative;overflow:hidden;display:grid;place-items:center}
.hero-left{background:var(--blush)}.hero-right{background:#eadbc8;border-left:1px solid rgba(73,63,51,.18)}
.placeholder-label{position:absolute;left:18px;top:18px;font-size:10px;letter-spacing:.14em;color:rgba(73,63,51,.68)}
.garment-shape{display:block;width:60%;height:34%;position:relative;opacity:.5}
.shape-bra:before,.shape-bra:after{content:"";position:absolute;bottom:20%;width:46%;height:85%;background:var(--white);border-radius:55% 55% 25% 25%;border:1px solid rgba(73,63,51,.18)}
.shape-bra:before{left:4%;transform:rotate(5deg)}.shape-bra:after{right:4%;transform:rotate(-5deg)}
.portrait-shape{width:40%;height:66%;background:var(--serra-taupe);border-radius:48% 48% 8% 8%;position:relative;opacity:.48;margin-top:24%}
.portrait-shape:before{content:"";position:absolute;width:62%;aspect-ratio:1;left:19%;top:-32%;border-radius:50%;background:var(--serra-deep-cocoa)}
.hero-card{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,calc(100% - 40px));background:var(--white);padding:48px;text-align:center}
.hero-card>p:not(.eyebrow){max-width:410px;margin:0 auto 25px}
.button{display:inline-flex;justify-content:center;align-items:center;border:1px solid;padding:14px 22px;min-height:49px;background:transparent;text-transform:uppercase;font-size:13px;font-weight:500;letter-spacing:.08em;border-radius:0}
.button-dark{background:var(--forest);border-color:var(--forest);color:var(--white)}.button-dark:hover{background:#382f26}
.button-outline{border-color:var(--blue);color:var(--ink)}.button-outline:hover{border-color:var(--focus);color:var(--focus)}
.button:disabled{opacity:.45;cursor:not-allowed}
.hero-note{font-size:12px;color:var(--fog);margin:24px auto 0!important}.hero-note span{color:var(--ember);letter-spacing:.02em;margin-right:6px}
.promise-strip{width:var(--page);margin:0 auto;padding:34px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.promise-strip p{margin:0}.promise-strip strong,.promise-strip span{display:block}.promise-strip strong{font-family:var(--serif);font-weight:400;font-size:17px}.promise-strip span{font-size:12px;color:var(--fog);margin-top:4px}
.section{width:var(--page);margin:96px auto}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:38px}.section-heading>p{max-width:470px;color:var(--fog);margin-bottom:4px}.section-heading h2{margin-bottom:0}
.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.category-card{background:none;border:0;padding:0;text-align:left;min-width:0}.category-visual,.product-visual{position:relative;overflow:hidden;border:0;background:#eadbc8}
.category-visual{aspect-ratio:.74;margin-bottom:14px}.category-card:nth-child(2n) .category-visual{background:#eadbc8}.category-card:nth-child(3n) .category-visual{background:var(--sage)}
.category-visual:after{content:"";position:absolute;left:26%;bottom:-8%;width:48%;height:77%;background:rgba(255,255,255,.36);border-radius:44% 44% 8% 8%}
.category-card h3{font-family:var(--serif);font-weight:400;font-size:21px;margin:0 0 3px}.category-card p{font-size:12px;color:var(--fog);margin:0}
.catalog-section{scroll-margin-top:20px}.catalog-heading{margin-bottom:24px}.catalog-heading>p{text-align:right}
.catalog-tools{border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:64px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:25px}
.search-field{display:flex;align-items:center;gap:12px;max-width:450px}.search-field svg{width:20px}.search-field input{border:0;background:transparent;width:100%;padding:16px 0;outline:0}.search-field input::placeholder{color:var(--fog)}
.filter-toggle{display:none}.sort-field{display:flex;align-items:center;gap:10px;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.sort-field select{border:0;background:transparent;padding:8px 22px 8px 5px}
.catalog-layout{display:grid;grid-template-columns:205px 1fr;gap:42px;padding-top:34px}
.filter-panel{position:sticky;top:20px;align-self:start}.filter-group{padding:0 0 23px;margin-bottom:22px;border-bottom:1px solid var(--line)}.filter-group h3{font-size:12px;text-transform:uppercase;letter-spacing:.13em;margin-bottom:12px}
.check-row{display:flex;gap:9px;align-items:center;font-size:13px;margin:9px 0}.check-row input{accent-color:var(--forest)}
.chip-list{display:flex;gap:7px;flex-wrap:wrap}.chip{padding:6px 9px;border:1px solid var(--line);background:transparent;font-size:12px}.chip.is-active{border-color:var(--ink);background:var(--ink);color:white}
.text-link{border:0;border-bottom:1px solid currentColor;background:transparent;padding:0 0 2px;font-size:13px;color:var(--blue)}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px 18px}
.product-card{min-width:0}.product-card button{border:0;background:none;text-align:left;padding:0}.product-visual{aspect-ratio:1;margin-bottom:13px;display:grid;place-items:center}.product-visual .placeholder-label{font-size:9px}.product-silhouette{width:57%;height:47%;position:relative;opacity:.6}.product-silhouette:before,.product-silhouette:after{content:"";position:absolute;background:var(--product-color,#b7a39e)}
.sil-bra:before,.sil-bra:after{width:48%;height:68%;bottom:15%;border-radius:55% 55% 25% 25%}.sil-bra:before{left:1%;transform:rotate(6deg)}.sil-bra:after{right:1%;transform:rotate(-6deg)}
.sil-panties:before{left:12%;top:18%;width:76%;height:65%;clip-path:polygon(0 0,100% 0,72% 100%,28% 100%)}
.sil-tank:before{left:20%;top:0;width:60%;height:95%;clip-path:polygon(18% 0,38% 0,38% 10%,62% 10%,62% 0,82% 0,100% 18%,87% 100%,13% 100%,0 18%)}
.sil-sport:before{left:10%;top:12%;width:80%;height:62%;border-radius:45% 45% 12% 12%}.sil-sport:after{left:10%;top:69%;width:80%;height:10%}
.badge{position:absolute;right:10px;top:10px;background:var(--ember);color:var(--ink);padding:4px 8px;font-size:10px;text-transform:uppercase;letter-spacing:.12em;border-radius:2px}.wishlist-button{position:absolute!important;left:9px;top:8px;width:34px!important;height:34px!important;display:grid;place-items:center;background:rgba(255,249,241,.9)!important;border-radius:50%!important;font-size:20px}.wishlist-button.is-active{color:var(--focus)}
.rating{color:var(--ember);font-size:12px;margin-bottom:5px}.rating span{color:var(--fog);margin-left:5px}.material-label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 5px}.product-name{font-size:15px;font-weight:500;margin:0 0 2px}.product-name a{text-decoration:none}.product-name a:hover{text-decoration:underline;text-underline-offset:3px}.product-price{font-size:14px;margin:0}.swatches{display:flex;gap:7px;margin-top:9px}.swatch{width:15px;height:15px;border-radius:50%;border:1px solid rgba(36,31,32,.25);background:var(--swatch)}.swatch:first-child{outline:1px solid var(--ink);outline-offset:2px}.product-card-actions{display:flex;justify-content:space-between;gap:12px;margin-top:14px;padding-top:10px;border-top:1px solid var(--line)}.product-card-actions a,.product-card-actions button{width:auto;color:var(--blue);font-size:11px;text-decoration:none;text-transform:uppercase;letter-spacing:.07em}.product-card-actions a:hover,.product-card-actions button:hover{text-decoration:underline;text-underline-offset:3px}
.empty-state{text-align:center;padding:80px 20px;border:1px solid var(--line)}
.editorial-section{width:var(--page);margin:112px auto;display:grid;grid-template-columns:1.25fr .75fr;min-height:580px}.editorial-visual{background:var(--blush);position:relative;overflow:hidden;display:grid;place-items:center}.fabric-fold{display:block;width:70%;height:70%;background:#eadbc8;clip-path:polygon(15% 12%,78% 0,100% 75%,38% 100%,0 65%);opacity:.76;transform:rotate(-8deg)}.editorial-copy{background:var(--forest);color:var(--white);padding:72px 58px;display:flex;flex-direction:column;justify-content:center}.editorial-copy p:not(.eyebrow){color:var(--blush);font-size:17px}.editorial-copy .text-link{color:var(--white);align-self:flex-start}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--sage);border-bottom:1px solid var(--sage);margin-bottom:120px}.service-grid article{padding:42px 36px;border-right:1px solid var(--sage)}.service-grid article:last-child{border-right:0}.service-grid article>span{font-family:var(--serif);color:var(--sage-dark);font-size:26px}.service-grid h3{font-family:var(--serif);font-weight:400;font-size:25px;margin:20px 0 10px}.service-grid p{color:var(--fog)}
.site-footer{background:var(--charcoal);color:white;padding:72px max(24px,calc((100% - 1280px)/2)) 24px}.footer-lead{display:grid;grid-template-columns:1fr 1fr;gap:0 80px;padding-bottom:60px;border-bottom:1px solid rgba(255,255,255,.2)}.footer-lead .eyebrow,.footer-lead h2{grid-column:1}.footer-lead form,.footer-lead>p:last-child{grid-column:2}.footer-lead form{grid-row:1/span 2;align-self:center;display:flex;border-bottom:1px solid white}.footer-lead input{width:100%;background:transparent;color:white;border:0;padding:17px 0;outline:0}.footer-lead button{border:0;background:transparent;color:white;text-transform:uppercase;font-size:12px;letter-spacing:.12em}.footer-lead>p:last-child{color:rgba(255,255,255,.6);font-size:12px;margin-top:12px}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:50px 0}.footer-links h3{font-size:11px;letter-spacing:.15em;text-transform:uppercase}.footer-links a,.footer-links button{display:block;background:none;border:0;color:rgba(255,255,255,.7);padding:4px 0;font-size:13px}.footer-bottom{display:flex;align-items:end;justify-content:space-between;border-top:1px solid rgba(255,255,255,.2);padding-top:25px}.footer-bottom p{font-size:11px;color:rgba(255,255,255,.5);margin:0}.footer-mark{font-size:46px}
.chat-pill{position:fixed;z-index:28;left:16px;bottom:16px;border:1px solid var(--ink);background:white;border-radius:999px;padding:7px 15px 7px 7px;display:flex;align-items:center;gap:8px}.chat-pill span{width:30px;height:30px;border-radius:50%;background:var(--ink);color:white;display:grid;place-items:center}
.toast-region{position:fixed;z-index:100;right:18px;bottom:18px;display:grid;gap:8px}.toast{background:var(--ink);color:white;padding:13px 18px;max-width:340px;font-size:13px;animation:toast-in .2s ease-out}.toast.is-leaving{opacity:0;transform:translateY(8px);transition:.2s}
dialog{padding:0;background:var(--linen);color:var(--ink);border:0;max-height:calc(100dvh - 24px)}dialog::backdrop{background:rgba(73,63,51,.68)}
.side-dialog{height:100dvh;max-height:none;width:min(460px,100%);margin:0 0 0 auto}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:25px 28px;border-bottom:1px solid var(--line)}.dialog-head h2{font-size:30px;margin:0}.dialog-head .eyebrow{margin-bottom:5px}.close-button{border:0;background:transparent;font-size:32px;font-weight:300;line-height:1;padding:8px}
.cart-body{padding:0 28px;overflow:auto;max-height:calc(100dvh - 310px)}.cart-empty{text-align:center;padding:100px 20px}.cart-item{display:grid;grid-template-columns:95px 1fr auto;gap:15px;padding:22px 0;border-bottom:1px solid var(--line)}.cart-thumb{aspect-ratio:1;background:#ded9cd;display:grid;place-items:center;font-family:var(--serif);font-size:30px}.cart-item h3{font-size:14px;margin:0 0 5px}.cart-meta{font-size:12px;color:var(--fog);margin:0 0 8px}.qty-control{display:inline-flex;border:1px solid var(--line);align-items:center}.qty-control button{background:transparent;border:0;width:30px;height:30px}.qty-control span{min-width:24px;text-align:center}.remove-button{border:0;background:none;color:var(--fog);font-size:11px;text-decoration:underline}.cart-footer{position:absolute;bottom:0;width:100%;padding:20px 28px 28px;background:var(--linen);border-top:1px solid var(--line)}.subtotal-row{display:flex;justify-content:space-between;font-size:17px;margin-bottom:7px}.cart-footer>p{font-size:11px;color:var(--fog)}.cart-footer .button{width:100%}
.product-dialog{width:min(1180px,calc(100% - 28px))}.product-close{position:absolute;right:14px;top:14px;z-index:2;background:rgba(255,255,255,.8)}.product-detail-grid{display:grid;grid-template-columns:1.12fr .88fr}.gallery-stage{min-height:700px;background:#ded9cd;position:relative;display:grid;place-items:center}.gallery-stage .product-silhouette{width:54%;height:48%}.product-info{padding:64px 58px;overflow:auto;max-height:calc(100dvh - 24px)}.product-info h2{font-size:40px;margin-bottom:8px}.detail-rating{margin-bottom:18px}.detail-price{font-size:18px;margin-bottom:28px}.detail-copy{color:var(--fog);margin-bottom:30px}.option-block{margin:22px 0}.option-label{display:flex;justify-content:space-between;font-size:12px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}.option-buttons{display:flex;flex-wrap:wrap;gap:8px}.option-button{min-width:46px;padding:10px 13px;border:1px solid var(--line);background:transparent}.option-button.is-selected{border-color:var(--ink);background:var(--ink);color:white}.option-button:disabled{text-decoration:line-through;color:var(--fog);background:#e8e6df;cursor:not-allowed}.color-option{display:flex;gap:8px;align-items:center}.color-dot{width:14px;height:14px;border-radius:50%;background:var(--dot);border:1px solid var(--line)}.detail-actions{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:25px}.detail-actions .button{width:100%}.heart-button{width:50px;border:1px solid var(--ink);background:transparent;font-size:22px}.detail-actions .secondary-action{grid-column:1/-1}.accordion{border-top:1px solid var(--line);margin-top:28px}.accordion details{border-bottom:1px solid var(--line);padding:16px 0}.accordion summary{cursor:pointer;font-size:13px}.accordion p,.accordion table{font-size:12px;color:var(--fog);margin-top:12px}.accordion table{width:100%;border-collapse:collapse}.accordion th,.accordion td{text-align:left;padding:7px;border-bottom:1px solid var(--line)}
.center-dialog{width:min(620px,calc(100% - 28px))}.center-dialog>div:not(.dialog-head),.center-dialog>form{padding:28px}.stack-form{display:grid;gap:17px}.stack-form label,.field{display:grid;gap:7px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.stack-form input,.stack-form select,.stack-form textarea,.field input,.field select,.field textarea{border:1px solid var(--line);background:white;padding:13px;width:100%;border-radius:0}.form-note{font-size:11px;color:var(--fog);text-transform:none;letter-spacing:.025em}.account-tabs{display:flex;border-bottom:1px solid var(--line)}.account-tabs button{flex:1;border:0;background:transparent;padding:14px;border-bottom:2px solid transparent}.account-tabs button.is-active{border-color:var(--ink)}.social-login{display:grid;gap:8px;margin-bottom:20px}.social-login .button{width:100%}.divider{text-align:center;font-size:11px;color:var(--fog);display:flex;gap:10px;align-items:center}.divider:before,.divider:after{content:"";height:1px;background:var(--line);flex:1}.demo-banner{border:1px solid var(--sage);padding:12px;font-size:11px;margin-bottom:18px}.profile-panel{padding:35px 28px!important}.profile-panel h3{font-family:var(--serif);font-size:25px}.profile-row{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}
.account-live{border-left:3px solid var(--sage);background:rgba(143,153,130,.1);padding:10px 12px;font-size:10px;letter-spacing:.12em}.forgot-link,.back-link{justify-self:start}.address-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:28px}.address-heading h4{margin:0;font-size:13px;text-transform:uppercase;letter-spacing:.1em}.address-list{display:grid;gap:10px;margin:12px 0 24px}.address-card{border:1px solid var(--line);padding:14px}.address-card.is-default{border-color:var(--sage)}.address-card>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.address-card span{background:var(--sage);color:white;padding:3px 7px;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.address-card p{font-size:12px;line-height:1.55;color:var(--fog);margin:10px 0}.profile-actions{display:flex;justify-content:flex-end}.address-option{align-items:flex-start}.address-option span{display:grid;gap:4px}.address-option small{color:var(--fog);line-height:1.45}
.checkout-dialog{width:min(780px,calc(100% - 28px))}.checkout-grid{display:grid;grid-template-columns:1fr 270px;gap:28px}.checkout-form{display:grid;gap:18px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.radio-card{display:flex;align-items:center;gap:12px;border:1px solid var(--line);padding:13px;background:white}.radio-card input{accent-color:var(--forest)}.summary-panel{background:white;padding:20px;align-self:start}.summary-panel h3{font-size:12px;text-transform:uppercase;letter-spacing:.1em}.summary-item,.summary-line{display:flex;justify-content:space-between;gap:15px;font-size:12px;padding:8px 0}.summary-line{border-top:1px solid var(--line)}.summary-total{font-size:16px;font-weight:600}.checkout-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:25px}.review-list{display:grid;gap:0}.review-section{padding:17px 0;border-bottom:1px solid var(--line)}.review-section h3{font-size:11px;text-transform:uppercase;letter-spacing:.12em}.review-section p{margin:0;color:var(--fog)}.demo-payment{background:#fff0e8;border-left:3px solid var(--ember);padding:14px;font-size:12px;margin-top:18px}
/* SERRA palette enforcement */
.demo-payment{background:#eadbc8}
.checkout-address-grid{align-items:start}.checkout-address-note{background:#efe5d6;border-top:3px solid var(--sage);padding:24px;position:sticky;top:0}.checkout-address-note>span{color:var(--fog);font-size:9px;letter-spacing:.14em;text-transform:uppercase}.checkout-address-note h3{font:400 24px/1.08 var(--serif);margin:12px 0}.checkout-address-note p,.checkout-address-note li{color:var(--fog);font-size:12px;line-height:1.55}.checkout-address-note ul{display:grid;gap:8px;margin:20px 0 0;padding-left:18px}
.cart-count{color:var(--ink)}
.chip.is-active,.option-button.is-selected{color:var(--white)}
.site-footer{color:var(--white)}
.site-footer,.editorial-copy{background:var(--forest)}
.footer-lead,.footer-bottom{border-color:rgba(216,194,165,.4)}
.footer-lead form{border-color:var(--blush)}
.footer-lead input,.footer-lead button{color:var(--white)}
.footer-lead>p:last-child,.footer-links a,.footer-links button,.footer-bottom p{color:var(--blush)}
.chat-pill,.stack-form input,.stack-form select,.field input,.field select,.field textarea,.radio-card,.summary-panel{background:var(--white)}
.chat-pill span,.toast{color:var(--white)}
.product-close{background:rgba(255,249,241,.9)}
.cart-thumb,.gallery-stage{background:var(--blush)}
.option-button:disabled{background:#eadbc8}
@keyframes toast-in{from{opacity:0;transform:translateY(8px)}}
@media(max-width:900px){
  :root{--page:calc(100% - 30px)}.site-header{height:66px}.menu-button{display:block}.menu-button span{display:block;width:20px;height:1px;background:var(--ink);margin:6px 0}.primary-nav{display:none;position:absolute;top:65px;left:0;width:100%;background:var(--linen);border-bottom:1px solid var(--line);padding:18px;flex-direction:column;align-items:flex-start}.primary-nav.is-open{display:flex}.site-header{grid-template-columns:1fr auto 1fr}.header-actions{gap:2px}.search-trigger{display:none}.wordmark{font-size:24px}.hero{min-height:630px;grid-template-columns:1fr}.hero-visual{min-height:315px}.hero-right{display:none}.hero-card{padding:36px 25px}.promise-strip{grid-template-columns:1fr 1fr}.category-grid{grid-template-columns:repeat(2,1fr)}.category-card:last-child{grid-column:1/-1}.category-card:last-child .category-visual{aspect-ratio:2}.catalog-layout{grid-template-columns:1fr}.filter-panel{display:none;position:static}.filter-panel.is-open{display:block;border-bottom:1px solid var(--line);padding-bottom:20px}.filter-toggle{display:block;border:0;background:transparent;text-transform:uppercase;font-size:12px;letter-spacing:.1em}.product-grid{grid-template-columns:repeat(2,1fr)}.editorial-section{grid-template-columns:1fr}.editorial-visual{min-height:430px}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;border-bottom:1px solid var(--sage)}.footer-lead{grid-template-columns:1fr}.footer-lead>*{grid-column:1!important;grid-row:auto!important}.footer-links{grid-template-columns:repeat(3,1fr)}.product-detail-grid{grid-template-columns:1fr}.gallery-stage{min-height:420px}.product-info{padding:38px 26px;max-height:none}.product-dialog{overflow:auto}.checkout-grid{grid-template-columns:1fr}.summary-panel{order:-1}
}
@media(max-width:560px){
  .announcement{font-size:10px}.account-trigger{display:none}.hero{width:100%;margin-top:0}.hero-card{width:calc(100% - 30px)}.promise-strip{grid-template-columns:1fr;padding:25px 0;gap:18px}.section{margin:70px auto}.section-heading{display:block}.section-heading>p{margin-top:14px}.category-grid{gap:12px}.catalog-tools{grid-template-columns:1fr auto}.sort-field{grid-column:1/-1;border-top:1px solid var(--line);padding:11px 0;justify-content:space-between}.product-grid{gap:32px 10px}.product-name,.product-price{font-size:13px}.rating{font-size:10px}.editorial-section{width:100%;margin:75px 0}.editorial-copy{padding:48px 24px}.service-grid article{padding:32px 8px}.site-footer{padding-top:50px}.footer-links{grid-template-columns:1fr 1fr}.footer-bottom{align-items:flex-start;gap:20px;flex-direction:column}.chat-pill{font-size:12px}.cart-body{padding:0 18px}.cart-item{grid-template-columns:75px 1fr}.cart-item>p{grid-column:2}.cart-footer{padding:18px}.product-info h2{font-size:34px}.field-row{grid-template-columns:1fr}.checkout-actions{flex-direction:column}.checkout-actions .button{width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Phase 16 · rendering and mobile hardening */
.category-section,.catalog-section,.editorial-section,.service-grid,.site-footer{content-visibility:auto;contain-intrinsic-size:1px 720px}.hero-photo,.category-visual img,.product-visual img,.editorial-visual img{color:transparent}.button:disabled,.text-link:disabled{cursor:wait;opacity:.58}.checkout-actions .button{min-height:44px}.legal-review-link{font-size:11px;color:var(--fog)}
@media(max-width:560px){.button,.icon-button,.filter-toggle,.option-button,.chip{min-height:44px}.catalog-tools{position:sticky;top:66px;z-index:10;background:var(--linen);padding:8px 0}.product-visual{aspect-ratio:1}.checkout-dialog{width:100%;max-width:none;max-height:100dvh}.center-dialog>div:not(.dialog-head),.center-dialog>form{padding:20px 16px}.checkout-grid{gap:18px}.summary-panel{position:static}}

/* Generated SERRA campaign photography */
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-card{left:28%;max-width:470px}
.category-visual:after{display:none}
.category-visual img,.product-visual img,.gallery-stage img,.editorial-visual img{width:100%;height:100%;display:block;object-fit:cover}
.category-visual img{object-position:center top}
.product-visual img,.gallery-stage img{object-fit:contain;background:var(--white)}
.gallery-stage{background:var(--white) url('./assets/product-luna-bra.webp?v=5') center/contain no-repeat}
.gallery-stage>.placeholder-label,.gallery-stage>.product-silhouette{display:none!important}
.editorial-visual img{object-position:center}
.brand-logo-footer{width:116px;height:116px;background:var(--linen)}
@media(max-width:900px){.hero-card{left:50%;transform:translate(-50%,-50%)}.hero-photo{object-position:62% center}.site-header>.brand-logo-link{width:72px;height:64px}.brand-logo-header{width:106px;height:106px;transform:translate(-17px,-22px)}}
.stock-warning{color:#9a4f3f;font-size:.76rem;margin:.35rem 0}.cart-item-invalid{border-left:3px solid #9a4f3f;padding-left:.75rem}.sandbox-note,.sandbox-box{background:#f3eee4;border-left:3px solid #968f7f;padding:.85rem 1rem;font-size:.82rem}.sandbox-box{margin:1.25rem 0}.payment-panel{text-align:center;max-width:560px;margin:0 auto;padding:1rem}.payment-panel h3{font-family:var(--font-display);font-size:2rem;margin:.75rem 0}.payment-panel>.button{width:100%;margin-top:.65rem}.status-pill{display:inline-block;background:#e7e2d6;color:#403c34;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;padding:.35rem .55rem}.order-mini,.order-card{border:1px solid var(--line);padding:1rem;background:rgba(255,255,255,.42)}.order-mini>div,.order-card-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.order-mini p,.order-card p{font-size:.82rem;margin:.5rem 0}.order-list{display:grid;gap:1rem;margin-top:1rem}.order-card-head small{display:block;color:var(--muted);margin-top:.25rem}.order-actions{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center;margin-top:1rem}.order-progress{display:grid;grid-template-columns:repeat(6,1fr);gap:.25rem;margin:1rem 0}.order-progress i{height:4px;background:#d8d1c4}.order-progress i.is-complete{background:#8f9a84}.order-progress i.is-active{background:#4d4437}.order-progress i.is-error{background:#a95c4b}.invoice-card{max-width:720px;margin:0 auto;background:#fffdf8;border:1px solid #cfc2ae;padding:2rem}.invoice-card header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d9cfbf;padding-bottom:1rem}.invoice-card header img{width:88px;height:88px;object-fit:contain}.invoice-card header div{text-align:right}.invoice-card header p{font-size:.7rem;letter-spacing:.18em}.invoice-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.5rem 0}.invoice-meta p{display:grid;gap:.3rem}.invoice-meta span{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.invoice-lines{border-top:1px solid #e2d9cb;border-bottom:1px solid #e2d9cb}.invoice-lines>div{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0}.invoice-lines small{display:block;color:var(--muted);margin-top:.25rem}.invoice-total{display:flex;justify-content:space-between;font-size:1.25rem;padding:1.25rem 0}.invoice-note{text-align:center;font-size:.75rem;color:var(--muted)}
@media(max-width:700px){.invoice-meta{grid-template-columns:1fr}.invoice-card{padding:1.1rem}.order-card-head{display:grid}.order-actions .button{width:100%}}

/* Production-style customer invoice */
.checkout-dialog:has(.invoice-card){width:min(980px,calc(100% - 28px))}.checkout-dialog:has(.invoice-card)>#checkout-content{background:#e9dfd2}.invoice-card{max-width:860px;padding:0;background:#fffdf8;color:#3e3429;box-shadow:0 22px 60px rgba(62,52,41,.12)}.invoice-sandbox{display:flex;justify-content:space-between;gap:18px;padding:10px 22px;background:#4b3f32;color:#fff;font-size:9px;letter-spacing:.08em}.invoice-sandbox span{color:#e7dacc;letter-spacing:0}.invoice-sandbox.is-production{background:#84917d}.invoice-brand{padding:30px 34px 24px!important}.invoice-brand>div:first-child{text-align:left}.invoice-brand>div:first-child img{width:94px;height:94px}.invoice-brand>div:first-child p{margin:-10px 0 0;font:italic 12px var(--serif);color:var(--fog);letter-spacing:0}.invoice-brand>div:last-child{display:grid;gap:4px;text-align:right}.invoice-brand>div:last-child>span{font-size:9px;letter-spacing:.22em}.invoice-brand>div:last-child strong{font:400 18px var(--serif)}.invoice-brand>div:last-child small{font-size:9px;color:var(--fog)}.invoice-facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 34px}.invoice-facts>div{padding:17px 14px;border-right:1px solid var(--line);display:grid;gap:5px}.invoice-facts>div:last-child{border-right:0}.invoice-facts span,.invoice-parties span,.invoice-customer-note span{font-size:8px;letter-spacing:.12em;color:var(--fog)}.invoice-facts strong{font-size:10px}.invoice-parties{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:28px;padding:28px 34px}.invoice-parties>div{display:grid;align-content:start;gap:6px}.invoice-parties strong{font-size:11px}.invoice-parties p{font-size:10px;line-height:1.6;color:var(--fog);margin:0}.invoice-table-wrap{margin:0 34px;overflow:auto}.invoice-item-table{width:100%;border-collapse:collapse;min-width:660px}.invoice-item-table th{padding:10px 9px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:8px;letter-spacing:.1em;text-align:right;color:var(--fog)}.invoice-item-table th:first-child,.invoice-item-table th:nth-child(2),.invoice-item-table td:first-child,.invoice-item-table td:nth-child(2){text-align:left}.invoice-item-table td{padding:15px 9px;border-bottom:1px solid #e6dccf;text-align:right;font-size:10px}.invoice-item-table td strong{display:block}.invoice-item-table td small{display:block;color:var(--fog);margin-top:3px}.invoice-summary{width:min(360px,calc(100% - 68px));margin:20px 34px 24px auto}.invoice-summary>div{display:flex;justify-content:space-between;gap:20px;padding:8px 0;font-size:10px}.invoice-summary .is-discount{color:#667460}.invoice-summary .invoice-grand-total{border-top:1px solid var(--ink);margin-top:8px;padding-top:14px;font-size:17px}.invoice-customer-note{margin:0 34px 24px;padding:14px;border-left:3px solid var(--sage);background:#f2efe8}.invoice-customer-note p{margin:5px 0 0;font-size:10px}.invoice-footer{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:0 34px;padding:20px 0 28px!important;border-top:1px solid var(--line)!important}.invoice-footer>div{display:grid;gap:4px}.invoice-footer strong{font:400 16px var(--serif)}.invoice-footer span{font-size:8px;color:var(--fog)}.invoice-screen-actions{max-width:860px;margin:18px auto 0}.invoice-screen-actions .button:nth-child(2){margin-left:auto}
@media(max-width:700px){.checkout-dialog:has(.invoice-card)>#checkout-content{padding:14px}.invoice-sandbox,.invoice-brand,.invoice-footer{align-items:flex-start;flex-direction:column}.invoice-sandbox span{max-width:280px}.invoice-brand>div:last-child{text-align:left}.invoice-facts{grid-template-columns:1fr 1fr;margin:0 18px}.invoice-facts>div:nth-child(2){border-right:0}.invoice-facts>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.invoice-parties{grid-template-columns:1fr;padding:24px 18px}.invoice-table-wrap{margin:0 18px}.invoice-summary{width:calc(100% - 36px);margin:20px 18px}.invoice-customer-note,.invoice-footer{margin-left:18px;margin-right:18px}.invoice-screen-actions .button:nth-child(2){margin-left:0}}
@media print{body.invoice-print-mode{background:#fff}.invoice-print-mode body{background:#fff}.invoice-print-mode>*:not(#checkout-dialog){display:none!important}.invoice-print-mode #checkout-dialog{display:block!important;position:static!important;inset:auto!important;width:100%!important;max-width:none!important;max-height:none!important;margin:0!important;border:0!important;box-shadow:none!important;background:#fff!important;overflow:visible!important}.invoice-print-mode #checkout-dialog::backdrop,.invoice-print-mode #checkout-dialog>.dialog-head,.invoice-print-mode .invoice-screen-actions{display:none!important}.invoice-print-mode #checkout-content{padding:0!important;background:#fff!important}.invoice-print-mode .invoice-card{max-width:none!important;border:0!important;box-shadow:none!important}.invoice-print-mode .invoice-item-table{min-width:0}.invoice-print-mode .invoice-sandbox{print-color-adjust:exact;-webkit-print-color-adjust:exact}.invoice-print-mode .invoice-footer{break-inside:avoid}.invoice-print-mode .invoice-item-table tr{break-inside:avoid}@page{size:A4;margin:12mm}}

/* Phase 11 · verified reviews and moderated merchandising */
.pdp-reviews{margin-top:34px;padding-top:28px;border-top:1px solid var(--line)}.pdp-review-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:8px}.pdp-review-head h3{font-family:var(--serif);font-size:24px;margin:2px 0}.pdp-review-head>strong{font-family:var(--serif);font-size:22px}.pdp-review{padding:17px 0;border-top:1px solid var(--line)}.pdp-review>div{display:flex;justify-content:space-between;gap:12px}.pdp-review>div strong{color:var(--forest);letter-spacing:.08em}.pdp-review>div span{font-size:11px;color:var(--fog)}.pdp-review p{font-size:13px;line-height:1.55;margin:9px 0 0}.review-account-block{display:grid;gap:9px;margin-top:12px}.review-eligible,.review-submitted{border:1px solid var(--line);background:rgba(255,255,255,.42);padding:13px}.review-eligible{display:flex;align-items:center;justify-content:space-between;gap:15px}.review-eligible>div,.review-submitted>div{display:grid;gap:4px}.review-eligible span,.review-submitted p{font-size:11px;color:var(--fog);margin:0}.review-eligible .button{padding:9px 11px;white-space:nowrap}.review-submitted>div{display:flex;align-items:center;justify-content:space-between}.review-submitted strong{color:var(--forest);letter-spacing:.08em}.review-submitted p{line-height:1.5;margin-top:8px}.review-policy-note{display:grid;gap:4px;border-left:3px solid var(--sage);background:rgba(143,153,130,.1);padding:12px;font-size:12px}.review-policy-note span{color:var(--fog)}
@media(max-width:560px){.review-eligible{align-items:flex-start;flex-direction:column}.review-eligible .button{width:100%}.pdp-review-head{align-items:flex-start}}

/* Connected customer account hub */
.account-hub,.account-feature{min-height:520px}.account-welcome{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:20px 0}.account-welcome h3{margin:3px 0 0}.account-stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin:18px 0}.account-stats button{display:grid;gap:7px;padding:15px 10px;border:0;border-right:1px solid var(--line);background:rgba(255,255,255,.42);text-align:left;cursor:pointer}.account-stats button:last-child{border-right:0}.account-stats span{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--fog)}.account-stats strong{font:400 21px var(--serif)}.account-menu{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin:22px 0}.account-menu button{display:grid;gap:4px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:14px 10px;text-align:left;cursor:pointer}.account-menu button:nth-child(odd){border-right:1px solid var(--line)}.account-menu button span{font-size:12px}.account-menu button small{font-size:10px;color:var(--fog)}.account-menu button:hover,.account-stats button:hover{background:rgba(143,153,130,.11)}.address-actions{justify-content:flex-start!important;gap:14px!important;border-top:1px solid var(--line);padding-top:10px}.danger-link{color:#934c42!important}.tracking-card{display:grid;gap:4px;border-left:3px solid var(--sage);background:#f3eee4;padding:11px 13px;margin:12px 0}.tracking-card span,.tracking-card small{font-size:10px;color:var(--fog)}
.feature-list-account{display:grid;gap:10px;margin-top:16px}.feature-item,.return-row,.order-choice{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);background:rgba(255,255,255,.5);padding:14px}.feature-item>div{display:grid;gap:5px}.feature-item>div:last-child{justify-items:end}.feature-item a{color:inherit}.feature-item span,.feature-item small,.return-row small,.order-choice small{display:block;color:var(--fog);font-size:11px}.account-empty{display:grid;justify-items:start;gap:9px;border:1px dashed var(--line);padding:24px}.account-empty p{margin:0;color:var(--fog);font-size:12px}.reward-balances{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:20px 0}.reward-balances>div{display:grid;gap:7px;background:var(--white);padding:14px}.reward-balances span{font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--fog)}.reward-balances strong{font:400 23px var(--serif)}.info-dot{width:18px;height:18px;padding:0;border:1px solid var(--fog);border-radius:50%;background:transparent;font:600 10px var(--sans);cursor:help}.return-window-note{border-left:3px solid var(--sage);background:rgba(143,153,130,.1);padding:13px 15px;margin:16px 0}.return-window-note p{font-size:11px;line-height:1.55;color:var(--fog);margin:5px 0 0}.reward-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.reward-grid article{display:grid;align-content:start;gap:8px;border:1px solid var(--line);background:rgba(255,255,255,.45);padding:14px}.reward-grid article>span{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--fog)}.reward-grid h4,.reward-grid p{margin:0}.reward-grid p{min-height:35px;font-size:11px;color:var(--fog)}.reward-grid .button{margin-top:5px}.points-history{display:grid;margin-top:12px}.points-history>div{display:grid;grid-template-columns:1fr auto auto;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:11px}.points-history small{color:var(--fog)}.points-history .positive{color:#65745e}.points-history .negative{color:#934c42}
.voucher-list{display:grid;gap:10px;margin-top:18px}.voucher-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;border:1px solid var(--line);background:rgba(255,255,255,.45);padding:14px;cursor:pointer}.voucher-card>span{display:grid;gap:4px}.voucher-card small{font-size:10px;color:var(--fog)}.voucher-card em{font-size:9px;text-transform:uppercase;font-style:normal;color:var(--fog)}.voucher-card.is-disabled{opacity:.55;cursor:not-allowed}.referral-code{display:grid;justify-items:start;gap:8px;border:1px solid var(--line);background:var(--white);padding:18px;margin:18px 0}.referral-code span{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--fog)}.referral-code strong{font:400 28px var(--serif);letter-spacing:.08em}.campaign-card{border:1px solid var(--sage);padding:15px;margin:14px 0}.campaign-card>span{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--fog)}.campaign-card h4{font:400 22px var(--serif);margin:5px 0}.campaign-card p,.campaign-card small,.referral-rules{font-size:11px;line-height:1.55;color:var(--fog)}.referral-rules{margin:16px 0}.inline-code-form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;margin-top:18px}.inline-code-form label{display:grid;gap:7px;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.inline-code-form input{border:1px solid var(--line);padding:13px}.inline-code-form .form-note{grid-column:1/-1;margin:0}.eligible-returns{display:grid;gap:8px;margin:22px 0}.eligible-returns h4{margin:0 0 4px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.order-choice,.return-row{width:100%;text-align:left;cursor:pointer}.order-choice span,.return-row span{display:grid;gap:4px}.order-choice em,.return-row em{font-size:10px;font-style:normal}.return-item-choice{display:grid;grid-template-columns:minmax(180px,1fr) 90px minmax(160px,.8fr);gap:10px;border:1px solid var(--line);padding:12px;margin-top:9px}.return-item-choice>label:first-child{display:flex;align-items:flex-start;gap:9px}.return-item-choice>label:first-child span{display:grid;gap:4px}.return-item-choice small{font-size:10px;color:var(--fog)}.evidence-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.evidence-fields legend,.return-items legend{margin-bottom:7px}.evidence-fields label{border:1px dashed var(--line);padding:11px}.evidence-fields small{font-size:9px;color:var(--fog);text-transform:none;letter-spacing:0}.return-progress{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin:24px 0}.return-progress>div{display:grid;gap:7px}.return-progress i{height:4px;background:#d9d1c5}.return-progress span{font-size:8px;text-align:center;color:var(--fog)}.return-progress .is-complete i{background:var(--sage)}.return-progress .is-active i{background:var(--ink)}.cart-discount{color:#667460}.cart-final{font-size:14px}.cart-upsell{border-left:3px solid var(--sage);padding-left:10px;color:var(--ink)!important}
@media(max-width:700px){.account-stats,.reward-balances{grid-template-columns:1fr 1fr}.account-stats button:nth-child(2),.reward-balances>div:nth-child(2){border-right:0}.account-stats button:nth-child(-n+2){border-bottom:1px solid var(--line)}.account-menu,.reward-grid{grid-template-columns:1fr}.account-menu button:nth-child(odd){border-right:0}.feature-item,.order-choice,.return-row{align-items:flex-start;flex-direction:column}.feature-item>div:last-child{justify-items:start;width:100%}.feature-item .button{width:100%}.return-item-choice{grid-template-columns:1fr}.evidence-fields{grid-template-columns:1fr}.return-progress{overflow:auto;grid-template-columns:repeat(7,88px);padding-bottom:6px}.inline-code-form{grid-template-columns:1fr}.account-welcome{align-items:stretch;flex-direction:column}.account-welcome .button{width:100%}.points-history>div{grid-template-columns:1fr auto}.points-history small{grid-column:1}.voucher-card{grid-template-columns:auto 1fr}.voucher-card em{grid-column:2}}
