@font-face{font-family:Manrope;src:url(fonts/sans.woff2) format('woff2');font-weight:400 600;font-display:swap}@font-face{font-family:Manrope;src:url(fonts/sans-bold.woff2) format('woff2');font-weight:700 900;font-display:swap}@font-face{font-family:Cormorant;src:url(fonts/serif.woff2) format('woff2');font-weight:400 600;font-display:swap}@font-face{font-family:Urdu;src:url(fonts/urdu.woff2) format('woff2');font-display:swap}
/* Layers: header 10, mobile action bar 20, native dialogs in the top layer. */
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.7 Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button{background:none}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:5px}img{display:block;max-width:100%;height:auto}picture{display:block}figure{margin:0}p{margin:0 0 1.3em}h1,h2,h3{margin:0;font-weight:800;line-height:1.1}h1{font-size:clamp(42px,5.2vw,76px);letter-spacing:-.055em}h2{font-size:clamp(34px,3.7vw,54px);letter-spacing:-.045em;margin-bottom:26px}h3{font-size:21px;letter-spacing:-.02em;margin-bottom:12px}.wrap{max-width:1320px;width:calc(100% - 112px);margin-inline:auto}.eyebrow{font-size:11px;line-height:1.5;letter-spacing:.17em;text-transform:uppercase;font-weight:800;margin-bottom:24px;color:var(--accent)}.lead{font-size:19px;line-height:1.65;max-width:550px}.fine{font-size:12px;line-height:1.8;color:var(--muted)}.pending{display:inline-block;font-size:12px;line-height:1.65;color:var(--pending-ink);background:var(--pending-bg);padding:5px 8px;border-left:2px solid var(--accent);vertical-align:middle}.preview-ribbon{text-align:center;background:var(--ribbon);font-size:10px;letter-spacing:.06em;line-height:26px;color:var(--ink)}.header{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:100px;border-bottom:1px solid var(--line);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px;font-weight:800;line-height:1.1;letter-spacing:.04em;flex-shrink:0}.brand small{display:block;font-size:10px;letter-spacing:.12em;margin-top:7px}.crest{width:52px;flex-shrink:0}.crest img{width:100%;height:52px;object-fit:contain}.header nav{display:flex;align-items:center;gap:28px;font-size:12px}.header nav a{display:flex;align-items:center;min-height:44px;position:relative}.header nav a[aria-current=page]{color:var(--accent);text-decoration:underline;text-underline-offset:8px}.nav-enquire{gap:20px;border-bottom:1px solid var(--accent);color:var(--accent);font-weight:800}.menu-toggle{display:none;border:0;min-height:44px;padding:8px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:52px;padding:14px 22px;background:var(--accent);color:var(--button-text);border:1px solid var(--accent);font-size:13px;font-weight:700;line-height:1.5;transition:transform .22s,opacity .22s}.button:hover{transform:translateY(-2px);opacity:.9}.button span,.text-link span{font-size:19px}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.text-link{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:48px;border-bottom:1px solid var(--line);font-size:13px;font-weight:700;padding:10px 0;width:fit-content;max-width:100%;min-width:180px}.text-link:hover{color:var(--accent)}.page-intro{padding-top:74px;padding-bottom:65px}.page-intro h1{margin-bottom:26px;max-width:900px}.page-intro .lead{max-width:610px}.reading{max-width:820px;padding-bottom:100px}.prose h2{font-size:28px;margin-top:46px;margin-bottom:18px}.prose p{max-width:70ch}.fact-list{margin:0}.fact-list dt{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-top:23px;padding-top:23px;border-top:1px solid var(--line)}.fact-list dt:first-child{margin-top:0}.fact-list dd{margin:9px 0 0;font-size:14px}.fact-list a{text-decoration:underline;text-underline-offset:4px}.steps{list-style:none;counter-reset:step;padding:0;margin:35px 0}.steps li{counter-increment:step;position:relative;padding:0 0 32px 58px}.steps li:before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:0;font-size:14px;font-weight:800;color:var(--accent);border-top:2px solid var(--accent);padding-top:7px;width:32px}.steps p{font-size:14px;max-width:45ch}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px 0;min-height:64px;cursor:pointer;font-weight:700;font-size:16px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:24px;font-weight:400}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details>div{padding:0 0 28px;font-size:15px;max-width:66ch}.faq-list details>div p{margin-top:15px}.contact-layout,.guide-grid,.admission-layout,.enquiry-section{display:grid;grid-template-columns:1fr 1fr;gap:110px;padding-bottom:100px}.contact-note{padding:45px;background:var(--tint);align-self:start}.contact-note h2{font-size:40px}.contact-note [lang=ur]{text-align:left;margin-top:20px}.enquiry-section{padding-top:60px;border-top:1px solid var(--line)}form label,dialog label{display:block;font-size:12px;font-weight:700;line-height:1.5}.enquiry-form{display:grid;grid-template-columns:1fr 1fr;gap:22px}.enquiry-form .button{grid-column:1/-1;justify-self:start}.optional{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;border:1px solid var(--input-border);background:var(--paper);color:var(--ink);border-radius:0;min-height:48px;padding:12px;margin-top:9px;font-size:14px;line-height:1.5}textarea{resize:vertical}input::placeholder{color:var(--muted);font-size:12px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}[lang=ur]{font-family:Urdu,serif;font-size:20px;line-height:1.9;font-weight:400}.skip{position:fixed;top:12px;left:12px;padding:12px 18px;background:var(--ink);color:var(--paper);z-index:100;transform:translateY(-200%)}.skip:focus{transform:none}footer{border-top:1px solid var(--line);padding:50px 0 24px}.footer-main{display:flex;justify-content:space-between;gap:70px;padding-bottom:35px}.footer-brand{font-size:24px;font-weight:800;letter-spacing:-.03em}.footer-main p{font-size:12px;margin-top:15px;color:var(--muted)}.footer-main nav{display:grid;grid-template-columns:repeat(2,1fr);gap:0 50px;align-content:start;font-size:12px}.footer-main nav a{min-height:44px;display:flex;align-items:center}.footer-bottom{border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;gap:30px;font-size:10px;color:var(--muted)}.mobile-contact{display:none}dialog{border:1px solid var(--line);padding:32px;background:var(--paper);color:var(--ink);max-width:570px;width:calc(100% - 32px);max-height:90dvh;overflow:auto}dialog::backdrop{background:rgba(20,18,28,.65)}dialog h2{font-size:36px;letter-spacing:-.03em}dialog p{font-size:13px}.dialog-top{display:flex;justify-content:space-between;align-items:start}.dialog-top .eyebrow{margin-bottom:24px}.close-dialog{font-size:30px;line-height:1;border:1px solid var(--line);width:44px;height:44px;display:grid;place-items:center}.dialog-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.dialog-actions .button{font-size:12px}#copy-status{min-height:20px}#zoom-dialog{width:min(94vw,900px);max-width:900px;text-align:center}#zoom-dialog .close-dialog{position:sticky;top:0;margin-left:auto;background:var(--paper);z-index:1}#zoom-image{max-height:75dvh;width:auto;margin:auto;object-fit:contain}#zoom-dialog p{margin:20px 0 0}.zoom-trigger{position:relative;padding:0;border:0;display:block;width:100%;text-align:left}.zoom-label{position:absolute;bottom:12px;right:12px;padding:9px 12px;background:var(--paper);color:var(--ink);font-size:10px;letter-spacing:.04em;border:1px solid var(--line)}.noscript{padding:20px;background:var(--tint)}.noscript a{text-decoration:underline}
@media(min-width:701px){.header{min-height:88px}.header .brand{font-size:19px}}
@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.header nav{gap:18px;font-size:11px}.header{gap:16px}.contact-layout,.guide-grid,.admission-layout,.enquiry-section{gap:50px}.brand{font-size:17px}.crest{width:42px}.crest img{height:42px}}
@media(max-width:700px){html{scroll-padding-top:24px}.wrap{width:calc(100% - 40px)}h1{font-size:44px;letter-spacing:-.05em}h2{font-size:36px;line-height:1.12}h3{font-size:20px}body{font-size:15px;padding-bottom:84px}.preview-ribbon{font-size:9px;line-height:23px}.header{min-height:80px}.brand{font-size:17px;gap:9px}.brand small{font-size:9px;letter-spacing:.1em}.crest{width:42px}.crest img{height:42px}.menu-toggle{display:flex;gap:18px;align-items:center;font-size:12px}.header nav{display:none;position:absolute;top:100%;left:-20px;right:-20px;padding:20px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 15px 20px #17294412;font-size:15px}.header nav.open{display:grid;gap:7px}.header nav a{padding:5px 10px;min-height:48px}.nav-enquire{justify-content:space-between}.eyebrow{font-size:10px;margin-bottom:19px}.lead{font-size:17px}.button{min-height:52px;font-size:12px;padding:14px 18px;gap:16px}.page-intro{padding-top:46px;padding-bottom:42px}.page-intro h1{margin-bottom:22px}.reading{padding-bottom:65px}.contact-layout,.guide-grid,.admission-layout,.enquiry-section{grid-template-columns:1fr;gap:38px;padding-bottom:65px}.contact-note{padding:28px}.contact-note h2{font-size:36px}.enquiry-section{padding-top:45px}.enquiry-form{gap:20px;grid-template-columns:1fr}.enquiry-form .button{justify-self:stretch}.form-pair{grid-template-columns:1fr}.steps li{padding-left:50px}.footer-main{flex-direction:column;gap:20px}.footer-main nav{gap:0 20px}.footer-bottom{flex-direction:column;gap:14px}.footer-brand{font-size:22px}.footer-main p{margin-top:12px}.mobile-contact{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:20;border-top:1px solid var(--line);background:var(--paper);padding:9px 12px calc(9px + env(safe-area-inset-bottom));gap:10px}.mobile-contact>a{min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:11px;line-height:1.5}.mobile-contact>a:first-child{flex-direction:column}.mobile-contact [lang=ur]{font-size:14px;line-height:1.5}.mobile-contact .button{padding:10px;gap:10px}.mobile-contact .button span{font-size:16px}dialog{padding:24px}dialog h2{font-size:32px}.dialog-actions .button{flex-grow:1}.pending{font-size:11px;overflow-wrap:anywhere}.fine{font-size:12px}.fact-list dt{font-size:10px}.prose h2{font-size:26px}.faq-list summary{font-size:15px}.zoom-label{font-size:9px;padding:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.fact-list dd>a{display:inline-flex;align-items:center;min-height:44px}.hero-photo figcaption a{display:inline-flex;align-items:center;min-height:44px}.school .hero-photo:before{bottom:59px}
.footer-brand{display:inline-flex;align-items:center;min-height:44px}
.brand{min-height:44px}
.tap-link{display:inline-flex;align-items:center;min-height:44px}

/* BN Royal — one quiet, legible family for the whole store. */
@font-face{font-family:'BN Jost';src:url(fonts/text.woff2) format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
/* Arial's x-height and vertical metrics are adjusted to Jost to limit font-swap movement. */
@font-face{font-family:'BN Jost Fallback';src:local('Arial'),local('Liberation Sans'),local('Arimo');size-adjust:87.1%;ascent-override:122.8%;descent-override:43.1%;line-gap-override:0%}
.boutique{--paper:#f6f0e7;--ink:#2a1a2b;--accent:#4a1d45;--button-text:#fbf6ee;--muted:#6c5f69;--line:#dccfbf;--tint:#efe5d8;--ribbon:#2e0f2b;--focus:#9a6b25;--pending-ink:#5e3f22;--pending-bg:#f1e3cc;--input-border:#a998a5;
  --plum:#4a1d45;--plum-deep:#2b0d28;--gold:#c9a76a;--gold-light:#e7d3a6;--serif:'BN Jost','BN Jost Fallback',Arial,sans-serif;--body:'BN Jost','BN Jost Fallback',Arial,sans-serif}
.tone-navy{--t:#dfe5ee;--w:#1c2a4a;--c:#1c2a4a}
.tone-sage{--t:#dbe6d7;--w:#3c5843;--c:#33503b}
.tone-lilac{--t:#e9ddec;--w:#4a1f4d;--c:#4a1f4d}
.boutique .preview-ribbon{color:var(--gold-light)}
.boutique h1,.boutique h2,.boutique h3,.boutique .footer-brand{font-family:var(--serif);font-weight:400;letter-spacing:.01em}
.boutique h1{font-size:clamp(40.3px,4.9vw,74.9px);line-height:1.08}
.boutique h2{font-size:clamp(30.2px,3.3vw,49px);line-height:1.08}
.boutique h3{font-size:20px;line-height:1.1}
.boutique em{font-style:italic;color:var(--gold)}
.boutique .eyebrow{font-size:10px;letter-spacing:.24em;color:#7d5a2c;font-weight:700}
.boutique .button{font-weight:600;font-size:12px;letter-spacing:.06em;border-radius:999px;padding:14px 26px}
.boutique .button.gold{background:var(--gold);border-color:var(--gold);color:var(--plum-deep)}
.boutique .button.light{background:#fbf6ee;border-color:#fbf6ee;color:var(--plum-deep)}
.boutique .text-link{font-weight:600;letter-spacing:.04em;min-width:0}
.boutique .text-link.light{color:#fbf6ee;border-color:#fbf6ee66}

/* header with the real logo */
.boutique .header-bar{background:var(--paper)}
.boutique .header{border-color:#cdb68f}
.logo-chip{width:52px;height:52px;border-radius:12px;background:radial-gradient(circle at 40% 30%,#4a1d45,#22091f);display:grid;place-items:center;padding:6px;flex-shrink:0}
.logo-chip picture,.logo-chip img{width:100%;height:100%;object-fit:contain}
.wordmark{font-family:var(--serif);font-weight:600;font-size:22px;letter-spacing:.2em}

/* hero: full-height plum campaign panel */
.bn-hero{position:relative;color:#fbf6ee;background:radial-gradient(110% 90% at 72% 42%,#6d2c64 0%,#45173f 48%,#2b0d28 100%);overflow:hidden}
.bn-hero:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(115deg,#ffffff05 0 2px,transparent 2px 9px);pointer-events:none}
.bn-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;align-items:end;min-height:calc(100svh - 126px - 64px)}
.bn-hero-copy{align-self:center;padding:60px 0}
.bn-hero-copy .eyebrow{color:var(--gold-light)}
.bn-hero h1{font-size:clamp(47.5px,6.2vw,100.8px);line-height:1.08;margin-bottom:28px;letter-spacing:.01em}
.bn-hero h1 em{color:var(--gold-light)}
.bn-hero .lead{font-size:17px;max-width:30ch;color:#f3e8f0;margin-bottom:34px}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 30px}
.bn-hero-look{position:relative;height:100%;display:flex;justify-content:center;align-items:flex-end;padding-top:30px}
.hero-word{position:absolute;left:50%;bottom:16%;transform:translateX(-50%);font:italic 400 clamp(120px,14vw,230px)/1 var(--body);color:transparent;-webkit-text-stroke:1px #e7d3a666;white-space:nowrap;pointer-events:none}
.hero-cut{position:relative;height:min(78svh,820px)}
.hero-cut img{height:100%;width:auto;max-width:none;filter:drop-shadow(0 30px 40px #12031080)}
.bn-hero-look figcaption{position:absolute;right:0;bottom:36px;display:grid;gap:4px;text-align:right;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-light)}
.bn-hero-look figcaption span:last-child{font:italic 400 18px/1.2 var(--body);letter-spacing:0;text-transform:none;color:#f3e8f0}
.bn-tags{position:relative;z-index:1;list-style:none;margin:0;padding:0 max(56px,calc((100% - 1320px)/2));display:flex;justify-content:space-between;align-items:center;min-height:64px;border-top:1px solid #e7d3a640;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#f3e8f0d0}
.bn-tags li{display:flex;align-items:center;gap:14px}
.bn-tags li:before{content:'';width:6px;height:6px;transform:rotate(45deg);background:var(--gold)}

/* the memorable moment: pinned horizontal lookbook, colour washes the background */
.lookbook{position:relative;color:#fbf6ee}
.lb-sticky{position:relative;overflow:hidden}
.wash{position:absolute;inset:0;background:var(--w);opacity:0}
.wash[data-wash="0"]{opacity:1}
.lb-head{position:absolute;top:28px;left:0;right:0;z-index:2;display:flex;justify-content:space-between}
.lb-head .eyebrow{color:var(--gold-light);margin:0}
.lb-hint{font-size:11px;letter-spacing:.2em;text-transform:uppercase;margin:0;color:#fbf6eeaa}
.lb-track{position:relative;z-index:1}
.lb-panel{position:relative;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:40px;padding:90px max(56px,calc((100vw - 1320px)/2)) 0;overflow:hidden;background:var(--w)}
.lb-word{position:absolute;left:4%;bottom:-.12em;font:italic 400 clamp(140px,22vw,360px)/1 var(--body);color:#ffffff10;white-space:nowrap;pointer-events:none}
.lb-figure{position:relative;align-self:end;display:flex;justify-content:center}
.lb-figure picture{height:min(80svh,800px)}
.lb-figure img{height:100%;width:auto;max-width:none;filter:drop-shadow(0 30px 40px #0a051060)}
.lb-copy{position:relative;max-width:460px;padding-bottom:40px}
.lb-copy .eyebrow{color:var(--gold-light)}
.lb-copy h3{font-size:clamp(33.1px,3.6vw,57.6px);line-height:1.08;margin-bottom:22px}
.lb-copy p{font-size:15px;color:#fbf6eed9}
.lb-count{font:italic 400 22px/1 var(--body);color:var(--gold-light);margin-bottom:26px!important}
.lb-actions{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;margin-top:30px}
.lb-progress{position:absolute;left:max(56px,calc((100vw - 1320px)/2));right:max(56px,calc((100vw - 1320px)/2));bottom:26px;height:2px;background:#ffffff26;z-index:2;display:none}
.lb-progress i{display:block;height:100%;background:var(--gold-light);transform-origin:left;transform:scaleX(.33)}
/* pinned mode (JS + motion allowed) */
.lb-on .lookbook{height:300vh}
.lb-on .lb-sticky{position:sticky;top:0;height:100vh;height:100svh}
.lb-on .lb-track{display:flex;width:300vw;height:100%;will-change:transform}
.lb-on .lb-panel{flex:0 0 100vw;height:100%;background:none}
.lb-on .lb-progress{display:block}
.lb-on .lb-word{will-change:transform}

/* collection cards: matched tints, same scale, same baseline */
.collection-preview{padding-top:100px;padding-bottom:100px}
.collection-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:44px}
.collection-heading h2{margin:0}
.collection-heading p{font-size:15px;max-width:34ch;margin:0}
.look-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.look-cards.two{grid-template-columns:repeat(2,1fr);max-width:880px}
.look-card{display:block;min-width:0;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.look-stage{position:relative;aspect-ratio:3/4;background:var(--t);border-radius:50% 50% 6px 6px/26% 26% 6px 6px;display:flex;justify-content:center;align-items:flex-end;overflow:hidden}
.look-stage .cutout{height:91%}
.look-stage .cutout img{height:100%;width:auto;max-width:none;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.look-no{position:absolute;top:13%;left:50%;transform:translateX(-50%);font:italic 400 clamp(120px,12vw,190px)/1 var(--body);color:var(--c);opacity:.13;pointer-events:none}
.look-detail{position:absolute;right:16px;bottom:16px;width:96px;height:96px;border-radius:50%;overflow:hidden;border:3px solid #fbf6ee;box-shadow:0 10px 24px #2a1a2b30;opacity:0;transform:translateY(10px) scale(.92);transition:opacity .35s,transform .45s cubic-bezier(.2,.7,.2,1)}
.look-detail picture,.look-detail img{width:100%;height:100%;object-fit:cover}
.look-card:hover,.look-card:focus-visible{transform:translateY(-6px)}
.look-card:hover .cutout img{transform:scale(1.02)}
.look-card:hover .look-detail,.look-card:focus-visible .look-detail{opacity:1;transform:none}
@media(hover:none){.look-detail{opacity:1;transform:none;width:76px;height:76px}}
.look-meta{padding:20px 4px 0}
.look-meta h3{font-size:21.6px;margin-bottom:6px}
.look-meta p{font-size:13px;color:var(--muted);margin-bottom:10px}
.look-meta .price{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--c);display:flex;gap:10px;font-weight:700}

/* detail loupe */
.detail-editorial{background:var(--t);padding:100px 0}
.detail-wrap{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.detail-story h2{margin-bottom:22px}
.detail-story p{font-size:15px;max-width:34ch}
.back-view{display:flex;align-items:flex-end;gap:16px;margin:30px 0 26px}
.back-view picture{height:200px}
.back-view img{height:100%;width:auto}
.back-view span{font:italic 400 18px/1.2 var(--body);color:var(--c);padding-bottom:12px}
.loupe{margin:30px 0}
.detail-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px}
.detail-heading h2,.detail-heading h3{margin:0;font-size:20px}
.detail-heading>span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.detail-image{display:block;position:relative;width:100%;aspect-ratio:5/6;max-height:520px;border-radius:999px 999px 8px 8px;overflow:hidden;background:#e4d6cb;box-shadow:0 0 0 1px #c9a76a80,0 0 0 8px #fbf6ee,0 0 0 9px #c9a76a80}
.detail-image picture{width:100%;height:100%}
.detail-image img{width:100%;height:100%;object-fit:cover}
.detail-editorial .loupe{margin:0;max-width:440px;justify-self:end;width:100%}
.detail-tabs{display:flex;gap:8px;margin-top:22px}
.detail-tabs button{flex:1;min-height:46px;border:1px solid #2a1a2b30;border-radius:999px;font-size:12px;letter-spacing:.06em;background:#fbf6ee99}
.detail-tabs button[aria-pressed=true]{background:var(--plum);border-color:var(--plum);color:#fbf6ee}
.detail-caption{font:italic 400 18px/1.4 var(--body);margin:14px 0 0;color:var(--ink)}
.zoom-label{border-radius:999px}

/* home picker on deep plum */
.design-picker{background:var(--plum-deep);color:#fbf6ee;padding:100px 0}
.picker-inner{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}
.design-picker .eyebrow{color:var(--gold-light)}
.design-picker em{color:var(--gold-light)}
.design-picker p{max-width:40ch;font-size:15px;color:#fbf6eed0}
.design-picker .fine{color:#fbf6ee99}
.design-picker .enquiry-form label:first-child{grid-column:1/-1}
.design-picker input,.design-picker select{background:transparent;color:#fbf6ee;border-color:#e7d3a666}
.design-picker select option{color:var(--ink)}
.design-picker input::placeholder{color:#fbf6ee99}

/* collection + design pages */
.boutique .page-intro{padding-top:70px;padding-bottom:50px}
.boutique .page-intro .lead{font-size:16px;max-width:48ch;margin-top:24px}
.collection-nav{display:flex;gap:40px;padding-bottom:24px;border-bottom:1px solid var(--line);font-size:13px}
.collection-nav a{display:flex;justify-content:space-between;align-items:center;gap:30px;min-height:44px}
.look-spread{padding:70px 0 90px;border-bottom:1px solid var(--line)}
.spread-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}
.spread-stage{position:sticky;top:24px;background:var(--t);border-radius:50% 50% 8px 8px/22% 22% 8px 8px;height:min(86vh,820px);display:flex;justify-content:center;align-items:flex-end;overflow:hidden}
.spread-stage .zoom-trigger{height:92%;width:auto;display:flex;justify-content:center}
.spread-stage .cutout,.spread-stage .cutout img{height:100%;width:auto;max-width:none}
.spread-stage .zoom-label{bottom:20px;right:auto;left:50%;transform:translateX(-50%);white-space:nowrap}
.spread-stage .look-no{top:10%}
.spread-stage .back-view{position:absolute;right:18px;bottom:16px;margin:0;flex-direction:column;align-items:center;gap:6px;background:#fbf6eeb8;border-radius:999px 999px 14px 14px;padding:14px 12px 8px}
.spread-stage .back-view picture{height:130px}
.spread-stage .back-view span{font-size:13px;padding:0}
.look-copy{min-width:0;padding-top:10px}
.look-copy h1{font-size:clamp(38.9px,4vw,60.5px);margin-bottom:22px}
.look-copy h2{font-size:clamp(31.7px,3.3vw,47.5px);margin-bottom:22px}
.look-copy .lead{font-size:16px;max-width:38ch}
.price{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--c,var(--plum));margin:18px 0 10px}
.look-copy .loupe{max-width:420px}
.spread-actions{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center}
.breadcrumb{padding-top:30px;display:flex;gap:16px;font-size:12px;align-items:center}
.breadcrumb a{min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:4px}
.breadcrumb+.look-spread{padding-top:20px}
.product-enquiry{margin-top:40px;border-top:1px solid var(--line);padding-top:30px}
.product-enquiry h3{font-size:24.5px;margin-bottom:0}
.product-enquiry>label{margin:20px 0;max-width:120px}
.product-enquiry .fine{font-size:11px;margin:16px 0}
.product-enquiry .button{width:100%}
.more-looks{padding:70px 0 90px}
.size-aside{background:var(--tint);padding:40px;align-self:start;border-radius:24px}
.size-aside h2{font-size:33.1px}
.size-aside [lang=ur]{text-align:left;margin-top:20px}
.boutique .steps h3{font-size:20px}
.boutique .steps li:before{color:var(--gold);border-color:var(--gold);font-family:var(--serif);font-size:18px}
.boutique .guide-grid>div>h2{font-size:34.6px}
.fashion-contact{background:var(--plum);color:#fbf6ee;padding:80px 0}
.fashion-contact>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.fashion-contact h2{margin:0}
.fashion-contact em{color:var(--gold-light)}
.fashion-contact p{font-size:15px}
.brand-story{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding-bottom:90px}
.brand-plate{background:radial-gradient(circle at 45% 35%,#5a2353,#2b0d28);border-radius:50% 50% 12px 12px/34% 34% 12px 12px;padding:70px 60px;display:grid;place-items:center}
.brand-plate picture{width:min(100%,380px)}
.brand-story p{font-size:15px;max-width:40ch}
.about-facts{font-size:12px;margin:30px 0}
.boutique .prose h2{font-size:25.9px}
.boutique .contact-note{border-radius:24px}
.boutique .contact-note h2{font-size:36px}

/* footer on deep plum with the logo */
.boutique footer{background:var(--plum-deep);color:#fbf6ee;border:0;--line:#e7d3a630;--muted:#fbf6eeaa}
.boutique footer .footer-id{display:grid;gap:10px}
.footer-logo{width:140px}
.boutique footer .motto{font:italic 400 22px/1.3 var(--body);color:var(--gold-light);margin:6px 0 0!important}

@media(max-width:1000px){
  .bn-hero h1{font-size:54.7px}
  .look-cards{gap:16px}
  .look-meta h3{font-size:19px}
}
@media(max-width:700px){
  .wordmark{font-size:18px;letter-spacing:.16em}
  .logo-chip{width:44px;height:44px;border-radius:10px;padding:5px}
  .bn-hero-inner{display:block;position:relative;min-height:calc(100svh - 103px - 96px - 84px);min-height:max(560px,calc(100svh - 103px - 96px - 84px))}
  .bn-hero-copy{padding:30px 0 0;position:relative;z-index:2;max-width:64%}
  .bn-hero h1{font-size:clamp(37.4px,10.5vw,46.1px);margin-bottom:14px;text-shadow:0 2px 24px #2b0d2880}
  .bn-hero .lead{font-size:14px;margin-bottom:20px;max-width:20ch}
  .hero-actions .text-link{display:none}
  .hero-actions .button{padding:12px 20px;gap:12px}
  .bn-hero-look{position:absolute;right:-14%;bottom:0;height:100%;padding:0;align-items:flex-end}
  .hero-cut{height:calc(100% - 40px)}
  .hero-word{font-size:34vw;bottom:8%;left:20%}
  .bn-hero-look figcaption{display:none}
  .bn-tags{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;padding:18px 20px;min-height:96px;font-size:9.5px;letter-spacing:.16em}
  .lb-head{top:18px}
  .lb-panel{grid-template-columns:1fr;gap:0;padding:56px 20px 0;align-content:end;text-align:left}
  .lb-figure{order:-1;justify-content:flex-start}
  .lb-figure picture{height:min(52svh,470px)}
  .lb-copy{position:absolute;right:20px;left:46%;bottom:70px;padding:0}
  .lb-copy h3{font-size:24.5px;margin-bottom:10px}
  .lb-copy p:not(.eyebrow):not(.lb-count){font-size:13px;margin-bottom:0}
  .lb-count{font-size:17px;margin-bottom:12px!important}
  .lb-actions{flex-direction:column;align-items:stretch;gap:2px;margin-top:16px}
  .lb-actions .button{padding:12px 16px}
  .lb-word{font-size:44vw;bottom:auto;top:12%;left:-4%}
  .lb-progress{left:20px;right:20px;bottom:20px}
  .lookbook:not(.x) .lb-panel{min-height:0}
  html:not(.lb-on) .lb-panel{padding-bottom:30px}
  html:not(.lb-on) .lb-copy{position:relative;left:auto;right:auto;bottom:auto;padding-top:20px}
  .collection-preview{padding:64px 0}
  .collection-heading{flex-direction:column;align-items:start;gap:14px;margin-bottom:30px}
  .look-cards{grid-template-columns:1fr;gap:34px}
  .look-cards.two{grid-template-columns:1fr 1fr;gap:14px}
  .look-cards.two .look-meta p{display:none}
  .look-cards.two .look-meta h3{font-size:17px}
  .detail-editorial{padding:64px 0}
  .detail-wrap{grid-template-columns:1fr;gap:40px}
  .back-view picture{height:150px}
  .detail-editorial .loupe{justify-self:stretch}
  .design-picker{padding:64px 0}
  .picker-inner{grid-template-columns:1fr;gap:34px}
  .collection-nav{gap:16px;overflow-x:auto}
  .collection-nav a{white-space:nowrap;gap:12px}
  .look-spread{padding:40px 0 60px}
  .spread-grid{grid-template-columns:1fr;gap:34px}
  .spread-stage{position:relative;top:0;height:auto;aspect-ratio:3/4}
  .spread-stage .back-view picture{height:90px}
  .look-copy h1{font-size:36px}
  .look-copy h2{font-size:30.2px}
  .size-aside{padding:28px}
  .size-aside h2{font-size:27.4px}
  .boutique .guide-grid>div>h2{font-size:27.4px}
  .fashion-contact{padding:56px 0}
  .fashion-contact>.wrap{grid-template-columns:1fr;gap:20px}
  .brand-story{grid-template-columns:1fr;gap:40px}
  .brand-plate{padding:50px 40px}
  .boutique .contact-note h2{font-size:27.4px}
  .footer-logo{width:110px}
}
@media(max-width:370px){
  .wordmark{font-size:16px;letter-spacing:.12em}
  .bn-hero h1{font-size:37.4px}
  .lb-copy{left:42%}
  .lb-copy h3{font-size:21.6px}
}

/* ---------- Round 2 (owner 10-29): premium buttons, full figures everywhere, honest zoom ---------- */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* Buttons: plum + antique gold, serif caps label, gold hairline, gold fill sweeps in on hover (transform only). */
.boutique .button{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:14px;
  min-height:52px;padding:0 30px;border-radius:999px;border:1px solid var(--gold);background:linear-gradient(180deg,#5b2656,#43183f);color:#fbf6ee;
  font:600 15px/1 var(--serif);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;
  box-shadow:inset 0 0 0 3px #43183f,inset 0 0 0 4px #e7d3a659,0 10px 24px -14px #2b0d28cc;
  transition:color .35s cubic-bezier(.2,.7,.2,1),transform .2s,box-shadow .3s}
.boutique .button:before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;background:linear-gradient(180deg,#e2c58f,#b88f4e);
  transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.boutique .button:hover{opacity:1;transform:translateY(-1px);color:var(--plum-deep);box-shadow:inset 0 0 0 3px #00000000,inset 0 0 0 4px #fff6,0 14px 30px -14px #2b0d28dd}
.boutique .button:hover:before{transform:scaleX(1)}
.boutique .button:active{transform:translateY(1px) scale(.985);box-shadow:inset 0 0 0 3px #00000000,inset 0 2px 6px #2b0d2855;transition-duration:.08s}
.boutique .button:focus-visible{outline:2px solid var(--gold);outline-offset:4px;box-shadow:0 0 0 7px #c9a76a40}
.boutique .button .label{font:inherit}
.boutique .button svg{flex-shrink:0}
.boutique .arrow{width:14px;height:14px;display:inline-block;vertical-align:middle;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.boutique a:hover .arrow,.boutique button:hover .arrow{transform:translate(2px,-2px)}
.boutique .wa-icon{width:20px;height:20px;display:inline-block}
.boutique .button.gold{background:linear-gradient(180deg,#e0c38c,#bf9858);border-color:#e7d3a6;color:var(--plum-deep);box-shadow:inset 0 0 0 3px #c9a76a,inset 0 0 0 4px #fbf6ee80,0 10px 24px -14px #12031099}
.boutique .button.gold:before{background:linear-gradient(180deg,#5b2656,#3a1336)}
.boutique .button.gold:hover{color:#fbf6ee}
.boutique .button.light{background:#fbf6ee;border-color:#fbf6ee;color:var(--plum-deep);box-shadow:inset 0 0 0 3px #fbf6ee,inset 0 0 0 4px #c9a76a99,0 10px 24px -14px #0a051099}
.boutique .button.secondary{background:transparent;color:var(--plum);border-color:var(--plum);box-shadow:none}
/* Text links: caps, gold hairline that draws in from the left */
.boutique .text-link{position:relative;display:inline-flex;gap:12px;min-height:48px;padding:0 2px;border:0;font:600 14px/1 var(--serif);letter-spacing:.16em;text-transform:uppercase;width:auto;min-width:0}
.boutique .text-link:after{content:'';position:absolute;left:0;right:0;bottom:10px;height:1px;background:currentColor;opacity:.35}
.boutique .text-link:before{content:'';position:absolute;left:0;right:0;bottom:10px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.7,.2,1);z-index:1}
.boutique .text-link:hover{color:inherit}.boutique .text-link:hover:before{transform:scaleX(1)}
.boutique .text-link:active{transform:translateY(1px)}
.boutique .text-link.light{color:#fbf6ee}
/* nav enquire = small gold-hairline pill */
.boutique .nav-enquire{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 20px;border:1px solid var(--plum);border-radius:999px;color:var(--plum);
  font:600 13px/1 var(--serif);letter-spacing:.16em;text-transform:uppercase;transition:background .3s,color .3s}
.boutique .nav-enquire:hover{background:var(--plum);color:#fbf6ee}
.boutique .nav-enquire .wa-icon{width:17px;height:17px}
/* detail tabs + zoom label */
.detail-tabs button{min-height:48px;font:600 13px/1 var(--serif);letter-spacing:.14em;text-transform:uppercase;border-color:#c9a76a99;transition:background .3s,color .3s,border-color .3s}
.detail-tabs button:hover{border-color:var(--plum)}
.detail-tabs button:active{transform:translateY(1px)}
.boutique .zoom-label{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid #c9a76a;background:#fbf6eef2;color:var(--plum-deep);font:600 12px/1 var(--serif);letter-spacing:.16em;text-transform:uppercase;box-shadow:0 6px 16px -8px #2a1a2b66}
.zoom-icon{width:14px;height:14px}
.zoom-trigger:hover .zoom-label{background:var(--plum);color:#fbf6ee}
.boutique .collection-nav a{font:600 14px/1 var(--serif);letter-spacing:.14em;text-transform:uppercase;min-height:48px}
.boutique .breadcrumb a{min-height:48px}
.look-meta .price{min-height:24px;align-items:center}

/* Hero: the whole figure, head to feet, inside the hero at every width */
.bn-hero-look{min-width:0}
.hero-cut{height:min(78svh,820px,calc(100svh - 190px))}
@media(max-width:700px){
  .bn-hero-inner{display:grid;grid-template-columns:1fr;min-height:0}
  .bn-hero-copy{max-width:none;padding:30px 0 0}
  .bn-hero h1{font-size:clamp(36px,10.1vw,44.6px)}
  .bn-hero .lead{max-width:30ch}
  .hero-actions .text-link{display:inline-flex}
  .bn-hero-look{position:relative;right:auto;height:auto;justify-content:center;padding:6px 0 0}
  .hero-cut{height:min(64svh,560px)}
  .hero-word{font-size:30vw;bottom:14%;left:50%}
}
/* Lookbook: figure sits above the progress bar, never under the panel edge */
.lb-panel{padding-bottom:64px}
.lb-figure picture{height:min(80svh,800px,calc(100svh - 170px))}
.lb-on .lb-progress{bottom:30px}
@media(max-width:700px){
  .lb-panel{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:end;padding:64px 20px 54px}
  .lb-figure{order:0;justify-content:flex-start}
  .lb-figure picture{height:min(52svh,470px,calc((100vw - 222px) * 2.6))}
  .lb-copy,html:not(.lb-on) .lb-copy{position:relative;left:auto;right:auto;bottom:auto;padding:0 0 6px}
  .lb-actions .button{padding:0 14px;font-size:13px;letter-spacing:.12em}
  .lb-on .lb-progress{bottom:24px}
}
@media(max-width:370px){.lb-copy{left:auto}.lb-copy h3{font-size:20.2px}}
/* Collection arches: figure fully inside the arch with a little floor below the feet */
.look-stage{padding-bottom:5%}
.look-stage .cutout{height:86%}
.look-detail{right:12px;bottom:12px;width:72px;height:72px}
@media(hover:none){.look-detail{width:64px;height:64px}}
/* Design spreads: the zoom button is the whole stage; the label and back view sit in free corners */
.spread-stage{padding-bottom:4%}
.spread-stage .zoom-trigger.stage-zoom{position:absolute;inset:0;width:100%;height:100%;display:flex;justify-content:center;align-items:flex-end;padding-bottom:4%;background:none}
.spread-stage .cutout{height:88%}
.spread-stage .cutout img{height:100%;width:auto;max-width:none}
.spread-stage .zoom-label{left:auto;right:18px;bottom:18px;transform:none}
.spread-stage .back-view{position:absolute;left:18px;right:auto;bottom:18px;top:auto;margin:0;width:auto;flex-direction:row;align-items:center;gap:10px;padding:8px 14px 8px 10px;border:1px solid #c9a76a;border-radius:999px;background:#fbf6eef2;min-height:48px}
.spread-stage .back-view picture{height:56px}
.spread-stage .back-view img{height:100%;width:auto}
.spread-stage .back-view span{font:600 12px/1 var(--serif);letter-spacing:.14em;text-transform:uppercase;color:var(--plum-deep);padding:0}
@media(max-width:700px){.spread-stage .back-view picture{height:40px}.spread-stage .zoom-label,.spread-stage .back-view{bottom:12px}.spread-stage .zoom-label{right:12px}.spread-stage .back-view{left:12px}
  .spread-stage{aspect-ratio:auto;height:calc(min(100vw - 40px,560px) * 1.36)}}
/* Zoom dialog: fit first, then actual size (1 source px per device px, never enlarged) */
#zoom-dialog{width:min(96vw,1100px);max-width:1100px;padding:16px 16px 20px}
.zoom-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;position:sticky;top:0;z-index:1}
.zoom-size{min-height:48px;padding:0 22px;border:1px solid var(--gold);border-radius:999px;font:600 13px/1 var(--serif);letter-spacing:.16em;text-transform:uppercase;color:var(--plum);background:var(--paper)}
.zoom-size[aria-pressed=true]{background:var(--plum);color:#fbf6ee}
.boutique #zoom-dialog .close-dialog{position:static;border-radius:50%;border-color:var(--gold)}
.zoom-frame{max-height:76dvh;overflow:auto;display:grid;place-items:center;background:var(--tint);border-radius:12px;overscroll-behavior:contain}
#zoom-image{max-height:74dvh;max-width:100%;width:auto;cursor:zoom-in}
#zoom-dialog.actual .zoom-frame{place-items:start}
#zoom-dialog.actual #zoom-image{max-height:none;max-width:none;height:auto;cursor:zoom-out}
/* mobile quick bar */
@media(max-width:700px){
  .boutique .mobile-contact>a:first-child{font:600 13px/1 var(--serif);letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--plum);border-radius:999px;color:var(--plum)}
  .boutique .mobile-contact .button{padding:0 10px;font-size:12px;letter-spacing:.05em;gap:6px;white-space:nowrap}
  .boutique .button{padding:0 24px}
  .boutique .product-enquiry .button,.boutique .enquiry-form .button{white-space:normal;line-height:1.2;text-align:center}
}
/* Round 2b: the design stage keeps a plinth strip under the feet for Enlarge / Back view (never over the figure),
   and the figure height is also capped by the stage width so wide looks (dupatta out) stay clear of the arch curve. */
.spread-stage{container-type:size}
.spread-stage .zoom-trigger.stage-zoom{padding-bottom:78px}
.spread-stage .cutout{height:min(calc(100% - 78px - 6%),190cqw)}
@media(max-width:700px){.spread-stage .zoom-trigger.stage-zoom{padding-bottom:66px}.spread-stage .cutout{height:min(calc(100% - 66px - 5%),190cqw)}}
.spread-stage:after{content:'';position:absolute;left:0;right:0;bottom:0;height:78px;background:linear-gradient(180deg,#00000000,#2a1a2b0d);pointer-events:none}
@media(max-width:700px){.spread-stage:after{height:66px}}
/* every header tap target 48px */
.boutique .brand,.boutique #navigation a{min-height:48px;display:inline-flex;align-items:center}
.boutique .menu-toggle{min-height:48px}
.spread-stage .zoom-trigger.back-view{height:auto;width:auto;z-index:2}
@media(max-width:700px){.boutique .button{white-space:normal;max-width:100%;text-align:center;line-height:1.25;padding-top:12px;padding-bottom:12px}}
.spread-stage .back-view picture{height:40px}.spread-stage .zoom-trigger.back-view{padding-top:6px;padding-bottom:6px}
/* phones: the pinned lookbook panel keeps its figure above the fixed contact bar (67px) and the progress line */
@media(max-width:700px){.lb-panel{padding-bottom:108px}.lb-on .lb-progress{bottom:88px}}
@media(max-width:700px){.boutique .collection-nav{flex-wrap:wrap;overflow:visible;gap:0 22px}}
/* a11y: italic gold words on light surfaces use the deeper antique gold (>= 4.4:1); dark sections keep --gold-light */
.boutique em{color:#8a6326}
.lb-head h2.eyebrow{font:inherit;font-size:11px;letter-spacing:.17em;text-transform:uppercase;font-weight:800;margin:0;color:var(--gold-light)}
.boutique .bn-hero h1 em,.boutique .design-picker em,.boutique .fashion-contact em{color:var(--gold-light)}

/* ---------- Round 3 (owner 10-30): type system + closer look shows the whole part ---------- */
body.boutique{font-family:var(--body);font-size:17px;line-height:1.65}
.boutique .lead{font-size:19px}
.boutique h1,.boutique h2,.boutique h3,.boutique .footer-brand{font-weight:500;font-variant-numeric:lining-nums}
.boutique h1 em,.boutique h2 em,.boutique h3 em{font-family:var(--serif);font-style:italic;font-weight:400;font-size:1.12em;letter-spacing:0;text-transform:none}
.wordmark{font-weight:600;letter-spacing:.14em}
.boutique .footer-brand{font-size:22px;letter-spacing:.12em}
.boutique .eyebrow,.lb-head h2.eyebrow{font-family:var(--body);font-weight:600;font-size:11px;letter-spacing:.2em}
.boutique .button{font-size:13px;letter-spacing:.12em;font-weight:600}
.boutique .text-link{font-size:13px;letter-spacing:.12em}
.boutique .text-link .label,.boutique .button .label{font-size:inherit}
.nw{white-space:nowrap}
/* the giant lookbook word is pure decoration: drawn from data-word so it is not text for screen readers or contrast checks */
.lb-word:before{content:attr(data-word)}
.boutique .collection-nav a,.boutique .detail-tabs button{font-size:12px;letter-spacing:.12em}
.boutique .zoom-label{font-size:11px;letter-spacing:.12em}
.zoom-size{font-size:12px;letter-spacing:.12em}
.boutique .price,.look-meta .price{font-family:var(--body);font-weight:600;letter-spacing:.12em}
.boutique .faq-list summary{font-family:var(--body);font-size:19px;font-weight:500}
.boutique .fact-list dt{font-family:var(--body);font-weight:600;letter-spacing:.12em}
.boutique .fine,.boutique .fact-list dd{font-size:15px}
.boutique .detail-caption{font-size:19px}
.boutique input,.boutique select,.boutique textarea{font-size:16px}
.boutique form label,.boutique dialog label{font-size:14px;font-weight:600}
.boutique .header nav{font-size:14px}
.boutique .footer-main nav,.boutique .footer-main p{font-size:14px}
.boutique .footer-bottom{font-size:12px}
@media(max-width:700px){.boutique .button{font-size:12px;letter-spacing:.1em}body.boutique{font-size:17px}}
/* A closer look: the frame takes the part's own aspect (--ar), the image is contained (never cropped), tabs sit above
   the frame so they never move when the image changes. Images are flattened on the look's tint (--fill). */
.loupe .detail-tabs{margin:0 0 18px}
.boutique .loupe .detail-heading h2,.boutique .loupe .detail-heading h3{font-size:24px;line-height:1.1;margin:0}.loupe .detail-heading>span{white-space:nowrap}
.detail-image{--ar:1;--h:min(560px,68svh);aspect-ratio:var(--ar);width:min(100%,calc(var(--h) * var(--ar)));max-height:none;height:auto;margin-inline:auto;
  border-radius:18px;overflow:hidden;background:var(--fill,#e9ddec);box-shadow:0 0 0 1px #c9a76a80,0 0 0 7px #fbf6ee,0 0 0 8px #c9a76a80}
.detail-image picture{width:100%;height:100%}
.detail-image img{width:100%;height:100%;object-fit:contain}
.loupe[data-look=design-3]{--fill:#dfe5ee}.loupe[data-look=design-5]{--fill:#dbe6d7}.loupe[data-look=khaddar]{--fill:#e9ddec}
.loupe .detail-caption{text-align:center}
/* Enlarge sits just under the frame (still inside the button) so it never covers a hand, cuff or shoe */
.loupe .detail-image{overflow:visible;margin-bottom:58px}.loupe .detail-image picture{border-radius:18px;overflow:hidden}
.boutique .loupe .zoom-label{top:calc(100% + 16px);bottom:auto;right:50%;transform:translateX(50%);white-space:nowrap}
.loupe .detail-image+.detail-caption{margin-top:0}
.look-detail{border-radius:10px;width:88px;height:72px;background:var(--t,#efe5d8)}
.look-detail picture,.look-detail img{object-fit:contain}
@media(hover:none){.look-detail{width:72px;height:60px}}
@media(max-width:700px){.detail-image{--h:min(480px,calc(100svh - 380px))}}

/* ---------- Round 4 (owner 10-30): theme from the brand itself ("the theme doesn't suit the brand") ----------
   Sampled from the client's logo (sapphire N #111c3d / #1c2951, champagne gold #a68f74–#c0ad91 on slate #16171d–#52565d)
   and posters (Khaddar aubergine #3a1737 + gold #e9c39e; Design poster blush ivory #f9ebe5). "Royal Sapphire": midnight
   sapphire surfaces, champagne gold buttons/rules, ivory text; product arches are lit niches tinted to flatter each outfit. */
.boutique{--bg:#0e1631;--bg-2:#121d3d;--bg-3:#18244b;--deep:#090f24;--hero-1:#2b3d6e;--hero-2:#14204a;--hero-3:#0a1129;
  --on:#f4eee3;--on-muted:#cbc4b8;--gold:#cdb68b;--gold-light:#e8d9b8;--gold-ink:#0e1631;--chip-1:#3a3e48;--chip-2:#15161c;
  --stage-ink:#1d1b28;--hair:#cdb68b40;
  --paper:var(--bg);--ink:var(--on);--muted:var(--on-muted);--line:#cdb68b33;--tint:var(--bg-2);--accent:var(--gold);--button-text:var(--gold-ink);
  --focus:var(--gold-light);--input-border:#cdb68b8c;--ribbon:var(--deep);--pending-ink:#4b3317;--pending-bg:#efe1c6}
/* arch tint (--t) flatters the outfit; wash (--w) is the dark jewel panel behind it in the lookbook; --c = outfit ink */
.tone-navy{--t:#e7e3da;--t2:#fbf8f2;--w:#262a34;--c:#1c2a4a}
.tone-sage{--t:#f2e3dc;--t2:#fdf6f2;--w:#173a33;--c:#33503b}
.tone-lilac{--t:#ecdcbd;--t2:#faf2e2;--w:#3a1737;--c:#4a1f4d}
.boutique .preview-ribbon{color:var(--gold-light)}
.boutique .header-bar{background:var(--deep)}
.boutique .header{border-color:var(--hair)}
.logo-chip{background:radial-gradient(circle at 40% 30%,var(--chip-1),var(--chip-2));box-shadow:inset 0 0 0 1px #cdb68b55}
.bn-hero{background:radial-gradient(110% 90% at 72% 42%,var(--hero-1) 0%,var(--hero-2) 50%,var(--hero-3) 100%)}
.bn-hero .lead,.bn-hero-look figcaption span:last-child,.bn-tags{color:#efe8dc}
.boutique .eyebrow{color:var(--gold)}
.boutique em,.boutique .bn-hero h1 em,.boutique .design-picker em,.boutique .fashion-contact em{color:var(--gold-light)}
/* lit arches on the dark page: soft light from above + gold hairline, so the figure reads like a boutique niche */
.look-stage,.spread-stage{background:radial-gradient(75% 55% at 50% 30%,var(--t2),#0000 70%),var(--t);box-shadow:inset 0 0 0 1px #cdb68b80,0 30px 60px -40px #000}
.look-detail{border-color:var(--gold-light);box-shadow:0 10px 24px #00000055}
.look-meta p{color:var(--on-muted)}
.look-meta .price,.boutique .price{color:var(--gold)}
.look-no{opacity:.12}
/* closer look on a raised surface; the frame ring matches whatever it sits on */
.detail-editorial{background:var(--bg-3)}
.detail-editorial.tone-lilac{background:radial-gradient(90% 80% at 75% 40%,#4a1c46,#2a0f28 70%)}
.back-view span{color:var(--gold-light)}
.detail-image{box-shadow:0 0 0 1px #cdb68b99,0 0 0 7px var(--ring,var(--bg)),0 0 0 8px #cdb68b80}
.detail-editorial .detail-image{--ring:#2f1230}
.loupe[data-look=design-3]{--fill:#e7e3da}.loupe[data-look=design-5]{--fill:#f2e3dc}.loupe[data-look=khaddar]{--fill:#ecdcbd}
.look-detail{background:var(--t)}
.detail-tabs button{background:transparent;color:var(--on);border-color:#cdb68b80}
.detail-tabs button:hover{border-color:var(--gold-light)}
.detail-tabs button[aria-pressed=true]{background:var(--gold);border-color:var(--gold);color:var(--gold-ink)}
.design-picker{background:var(--deep)}
.design-picker input,.design-picker select{background:transparent}
.boutique select option{color:#1d1b28;background:#fff}
.spread-stage .back-view,.boutique .zoom-label{background:#fbf8f2f2;border-color:var(--gold)}
.spread-stage .back-view span,.boutique .zoom-label{color:var(--stage-ink)}
.zoom-trigger:hover .zoom-label{background:var(--deep);color:var(--gold-light)}
.fashion-contact{background:radial-gradient(90% 90% at 80% 30%,var(--hero-1),var(--hero-3))}
.brand-plate{background:radial-gradient(circle at 45% 35%,#4a4e58,#16171d);box-shadow:inset 0 0 0 1px #cdb68b55}
.boutique footer{background:var(--deep);border-top:1px solid var(--hair)}
.size-aside,.boutique .contact-note{background:var(--bg-3)}
.boutique input,.boutique select,.boutique textarea{background:var(--deep);color:var(--on)}
/* buttons: champagne gold (the logo's metal) with sapphire label; a sapphire sweep on hover */
.boutique .button,.boutique .button.gold{background:linear-gradient(180deg,#e3d0a6,#b99c6a);border-color:var(--gold-light);color:var(--gold-ink);
  box-shadow:inset 0 0 0 3px #c4a978,inset 0 0 0 4px #fbf6ee8c,0 10px 24px -14px #000c}
.boutique .button:before,.boutique .button.gold:before{background:linear-gradient(180deg,#1f2d5c,#0e1631)}
.boutique .button:hover,.boutique .button.gold:hover{color:var(--gold-light);box-shadow:inset 0 0 0 3px #0000,inset 0 0 0 4px #cdb68b99,0 14px 30px -14px #000}
.boutique .button.light{background:#f4eee3;border-color:#f4eee3;color:var(--gold-ink);box-shadow:inset 0 0 0 3px #f4eee3,inset 0 0 0 4px #cdb68b99,0 10px 24px -14px #000}
.boutique .button.secondary{background:transparent;color:var(--gold-light);border-color:var(--gold)}
.boutique .nav-enquire{border-color:var(--gold);color:var(--gold-light)}
.boutique .nav-enquire:hover{background:var(--gold);color:var(--gold-ink)}
.zoom-size{color:var(--gold-light);background:var(--bg)}
.zoom-size[aria-pressed=true]{background:var(--gold);color:var(--gold-ink)}
.zoom-frame{background:var(--deep)}
@media(max-width:700px){.boutique .mobile-contact{background:var(--deep)}.boutique .mobile-contact>a:first-child{border-color:var(--gold);color:var(--gold-light)}}
/* round 4 (speed): blurred silhouette under each cut-out until its file has loaded (removed by app.js; never without JS) */
picture[data-lq]{background:center bottom/contain no-repeat}
picture[data-lq].lq-done,html:not(.js) picture[data-lq]{background-image:none!important}

/* ---------- Round 5 (owner 10-30): sentence-case, modern fashion-label typography ---------- */
body.boutique{font-family:'BN Jost','BN Jost Fallback',Arial,sans-serif;font-size:16px;line-height:1.6;font-synthesis:none}
body.boutique *{font-family:'BN Jost','BN Jost Fallback',Arial,sans-serif!important;text-transform:none!important}
.boutique h1,.boutique h2,.boutique h3{font-style:normal;font-weight:400;letter-spacing:-.025em;text-wrap:balance}
.boutique h1{font-size:clamp(36px,4.7vw,68px);line-height:1.08}
.boutique h2{font-size:clamp(29px,3.3vw,46px);line-height:1.14}
.boutique h3{font-size:22px;line-height:1.2}
.boutique em,.boutique i,.hero-word,.lb-word,.look-no,.boutique .detail-caption,.lb-count,.back-view span,.bn-hero-look figcaption span:last-child,.boutique footer .motto{font-style:normal!important}
.boutique :is(.eyebrow,.bn-tags,.lb-hint,.look-meta .price,.price,.text-link,.button,.collection-nav a,.detail-tabs button,.zoom-label,.zoom-size,.detail-heading>span,.fact-list dt){text-transform:none;letter-spacing:.045em}
.boutique .eyebrow,.lb-head h2.eyebrow{font-size:12px;font-weight:500;letter-spacing:.07em}
.boutique .bn-tags{font-size:12px;letter-spacing:.045em}
.boutique .button,.boutique .text-link,.boutique .collection-nav a{font-size:14px;font-weight:500;letter-spacing:.035em}
.boutique .price,.look-meta .price{font-size:13px;font-weight:500;letter-spacing:.035em}
.boutique .detail-tabs button{font-size:13px;font-weight:500;letter-spacing:.025em}
.wordmark{font-size:18px;font-weight:500;letter-spacing:.09em}
.boutique .footer-brand{font-weight:500;letter-spacing:.08em}
.bn-hero h1{font-size:clamp(40px,5.4vw,76px);letter-spacing:-.035em}
.lb-copy h3{font-size:clamp(29px,3.3vw,46px);line-height:1.12}
.look-copy h1{font-size:clamp(36px,4.2vw,61px);line-height:1.1}
.boutique .loupe .detail-heading h2,.boutique .loupe .detail-heading h3{font-size:22px;line-height:1.2;letter-spacing:-.02em}
.boutique .detail-caption,.boutique .faq-list summary,.boutique .fact-list dt{font-family:'BN Jost','BN Jost Fallback',Arial,sans-serif}
.boutique .detail-caption{font-size:16px}
@media(max-width:700px){body.boutique{font-size:16px}.bn-hero h1{font-size:clamp(36px,10vw,42px)}.wordmark{font-size:17px}.boutique .button,.boutique .text-link{font-size:13px;letter-spacing:.02em}.look-copy h1{font-size:36px}}
