@font-face{font-family:"Cormorant Garamond";src:url(fonts/cormorant-garamond-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Spectral";src:url(fonts/spectral-latin-300-normal.woff2) format("woff2");font-weight:300;font-display:swap}
@font-face{font-family:"Spectral";src:url(fonts/spectral-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Spectral";src:url(fonts/spectral-latin-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url(fonts/cormorant-garamond-latin-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}

:root{
  --bg:#F8F8F4;
  --bar:#EFEBE3;
  --soft:#6A5F57;
  --sans:"Spectral",Georgia,serif;
  --mark:"Cormorant Garamond",Georgia,serif;
  --ink:#101010;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:#231E1A;font-family:var(--sans);font-size:17.5px;line-height:1.6;letter-spacing:.02em;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img,video{display:block;max-width:100%}
h1,h2,h3{font-weight:400;font-size:inherit}
.u{text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
.hl:hover{text-decoration:underline;text-underline-offset:2px}

/* promo bar: rotating messages */
.promo{position:relative;height:30px;background:var(--bar);font-size:14.5px;overflow:hidden}
.promo-msg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;letter-spacing:.26px;opacity:0;transform:translateY(100%);transition:opacity .5s ease,transform .5s ease}
.promo-msg.on{opacity:1;transform:none}
.promo-msg.out{opacity:0;transform:translateY(-100%)}
.promo-x{position:absolute;right:16px;top:50%;transform:translateY(-50%);background:none;border:0;cursor:pointer;width:20px;height:20px}
.promo-x::before,.promo-x::after{content:"";position:absolute;left:3px;right:3px;top:50%;height:1px;background:#000;transform:rotate(45deg)}
.promo-x::after{transform:rotate(-45deg)}
.promo.closed{display:none}

/* header */
.hdr{position:sticky;top:0;z-index:50;height:50px;background:var(--bg);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 40px}
.hdr ul{list-style:none;display:flex;gap:36px;color:var(--ink);font-size:17px}
.hdr .right{justify-content:flex-end}
.hdr li>a{display:block;padding:2px 0}
.hdr li>a:hover,.hdr li.open>a{text-decoration:underline;text-underline-offset:2px}
.logo{font-family:var(--mark);font-weight:500;font-size:17px;letter-spacing:.3em;text-transform:uppercase;line-height:1;white-space:nowrap;padding-left:.3em}
.burger,.m-right{display:none}

/* mega dropdown: white panel down the left, page dimmed */
.mega{position:fixed;left:0;bottom:0;top:50px;width:500px;background:var(--bg);z-index:40;padding:40px;display:flex;flex-direction:column;justify-content:space-between;gap:32px;opacity:0;visibility:hidden;transition:all .2s cubic-bezier(.4,0,.2,1)}
.mega.on{opacity:1;visibility:visible}
.mega .cols{display:flex;gap:40px}
.mega .col{display:flex;flex-direction:column;gap:6px;font-size:17.5px;min-width:200px}
.mega .col a{width:fit-content;color:var(--ink)}
.mega .col a:hover{text-decoration:underline;text-underline-offset:2px}
.mega .gap{height:20px}
.mega .pics{display:flex;gap:4px}
.mega .pics a{width:208px}
.mega .pics .im{width:208px;height:277px}
.mega .pics span{display:block;margin-top:4px;color:var(--ink)}
.dim{position:fixed;inset:0;background:rgba(0,0,0,.3);z-index:30;opacity:0;visibility:hidden;transition:all .2s cubic-bezier(.4,0,.2,1)}
.dim.on{opacity:1;visibility:visible}
body.top-promo .mega{top:64px}

/* images */
.im{position:relative;overflow:hidden;background:#EDE5DA}
.im img,.im video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease}
.im img.ld,.im video{opacity:1}

/* full width image / video, 16:9, title centred near the bottom */
.full{position:relative;margin-bottom:200px}
.full .im{width:100%;aspect-ratio:16/9}
.full .cap{position:absolute;left:0;right:0;bottom:62px;text-align:center;color:#fff;z-index:2;display:flex;flex-direction:column;align-items:center;gap:18px}
.full .cap h2{font-size:34px;font-weight:500;letter-spacing:.3px;line-height:1.3;max-width:90%}
.full .cap a{font-size:17px;letter-spacing:.4px}
.full::after{content:"";position:absolute;left:0;right:0;bottom:0;height:40%;background:linear-gradient(transparent,rgba(0,0,0,.28));pointer-events:none}

/* three blocks 2:3 */
.blocks{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:0 40px;margin-bottom:200px}
.blocks .im{aspect-ratio:2/3}
.blocks h3{font-size:22px;letter-spacing:.6px;line-height:1.35;margin-top:18px}
.blocks a:hover h3{text-decoration:underline;text-underline-offset:3px}

/* image with text: 678x848 image, text column */
.iwt{display:grid;grid-template-columns:678fr 682fr;align-items:center;padding:0 40px;margin-bottom:200px}
.iwt .im{aspect-ratio:4/5}
.iwt .txt{width:440px;max-width:100%;justify-self:center;margin-left:-90px}
.iwt.flip{grid-template-columns:682fr 678fr}
.iwt.flip .im{order:2}
.iwt.flip .txt{width:508px;justify-self:start;margin-left:0}
.iwt h2{font-size:28px;font-weight:500;letter-spacing:.3px;margin-bottom:24px;line-height:1.3}
.iwt p{margin-bottom:13px}
.iwt .more{display:inline-block;margin:18px 28px 0 0;font-size:16.5px;text-decoration:underline;text-underline-offset:2px}
.iwt .list{list-style:none;margin:18px 0 6px;display:grid;gap:12px}
.iwt .list b{font-weight:400;display:block}
.iwt .list span{color:var(--soft)}

/* pages */
.ptitle{padding:56px 40px 40px;font-size:34px;font-weight:500;letter-spacing:.6px}
.pair2{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:0 40px}
.pair2 .im{aspect-ratio:4/5}
.ptxt{padding:18px 40px 0;display:flex;justify-content:space-between;gap:20px;margin-bottom:200px}
.ptxt h2{font-size:26px;font-weight:500;letter-spacing:.6px}
.ptxt p{max-width:440px;color:var(--soft)}

.faq{padding:0 40px;margin-bottom:200px;display:grid;grid-template-columns:1fr 1fr;gap:0 4px}
.faq>h2{grid-column:1/-1;font-size:34px;font-weight:500;letter-spacing:.6px;margin-bottom:40px}
.faq .g{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:40px}
.faq .g h3{font-size:23px;font-weight:500;letter-spacing:.45px}
details{border-bottom:1px solid #E2D8CB}
details:first-child{border-top:1px solid #E2D8CB}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:12px 0}
summary::-webkit-details-marker{display:none}
summary::after{content:"";width:7px;height:7px;border-right:1px solid #000;border-bottom:1px solid #000;transform:rotate(45deg);margin:4px 4px 0 0;flex:none;transition:transform .2s}
details[open] summary::after{transform:rotate(225deg);margin-top:8px}
details p{padding:0 0 14px;color:var(--soft);max-width:560px}

form{display:grid;gap:22px;margin-top:8px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
label{display:block;color:var(--soft);font-size:16px}
input,select,textarea{display:block;width:100%;margin-top:4px;font:inherit;color:#000;background:transparent;border:0;border-bottom:1px solid #000;border-radius:0;padding:6px 0;outline:none;-webkit-appearance:none;appearance:none}
select{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23000'/%3E%3C/svg%3E") no-repeat right 2px center;padding-right:20px}
textarea{min-height:80px;resize:vertical}
.fs{display:none;gap:22px}.fs.on{display:grid}
.send{justify-self:start;background:#231E1A;color:var(--bg);border:0;font:inherit;font-size:16px;text-transform:uppercase;letter-spacing:.5px;padding:12px 28px;cursor:pointer;margin-top:6px}
.thanks{display:none;margin-top:10px}
.hidden{display:none}

/* footer */
footer{padding:40px 40px 0}
.fcols{display:grid;grid-template-columns:306px 309px 337px 1fr;align-items:start}
.fcols h4{font-weight:500;font-size:21px;letter-spacing:.45px;margin-bottom:18px}
.fcols ul{list-style:none;display:grid}
.fcols li{line-height:2.4}
.fcols li a:hover{text-decoration:underline;text-underline-offset:2px}
.fnote p{max-width:420px}
.fnote a{text-decoration:underline;text-underline-offset:2px}
.fbase{display:flex;justify-content:center;gap:40px;padding:110px 0 40px;font-size:15px}

/* mobile */
@media (max-width:900px){
  .hdr{grid-template-columns:40px 1fr 60px;padding:0 20px}
  .hdr nav{display:none}
  .burger{display:block;background:none;border:0;width:20px;height:20px;position:relative;cursor:pointer}
  .burger i{position:absolute;left:0;right:0;height:1px;background:#000;transition:transform .25s}
  .burger i:nth-child(1){top:6px}.burger i:nth-child(2){top:13px}
  .m-open .burger i:nth-child(1){top:10px;transform:rotate(45deg)}
  .m-open .burger i:nth-child(2){top:10px;transform:rotate(-45deg)}
  .logo{justify-self:center;font-size:16px;letter-spacing:.24em}
  .m-right{display:block;justify-self:end}
  .mega,.dim{display:none}
  .mmenu{position:fixed;left:0;right:0;bottom:0;top:106px;background:var(--bg);z-index:45;display:flex;flex-direction:column;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}
  body.scrolled .mmenu{top:68px}
  .m-open .mmenu{transform:none}
  .tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #E2D8CB;padding:0 4px;margin-top:16px}
  .tabs button{background:none;border:0;font:inherit;font-size:18px;padding:10px 0;cursor:pointer;color:#000;border-bottom:2px solid transparent;margin-bottom:-1px}
  .tabs button.on{border-bottom-color:#000}
  .tpanel{display:none;flex:1;overflow:auto;padding:22px 16px 0}
  .tpanel.on{display:block}
  .tpanel a.row{display:flex;justify-content:space-between;align-items:center;font-size:18.5px;padding:8px 0}
  .tpanel a.row::after{content:"";width:7px;height:7px;border-right:1px solid #000;border-top:1px solid #000;transform:rotate(45deg)}
  .tpanel .sp{height:22px}
  .tpanel .pics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0 20px}
  .tpanel .pics .im{aspect-ratio:3/4}
  .tpanel .pics span{display:block;font-size:16px;margin-top:4px}
  .mfoot{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #E2D8CB}
  .mfoot a{padding:13px 16px;font-size:17px;border-bottom:1px solid #E2D8CB}
  .mfoot a:nth-child(odd){border-right:1px solid #E2D8CB}
  .promo-msg{padding:0 40px;font-size:15px}
  .full .cap h2{font-size:27px}
  .m-right{font-size:17px}
  .full{margin-bottom:120px}
  .full .im{aspect-ratio:4/5}
  .full .cap{bottom:44px;gap:14px}
  .blocks{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:4px;padding:0 20px;margin-bottom:120px;scrollbar-width:none}
  .blocks::-webkit-scrollbar{display:none}
  .blocks a{flex:0 0 62%;scroll-snap-align:center}
  .blocks h3{font-size:20px;margin-top:10px}
  .iwt,.iwt.flip{grid-template-columns:1fr;padding:0 20px;margin-bottom:120px}
  .iwt.flip .im{order:0}
  .iwt .txt,.iwt.flip .txt{width:auto;margin:30px 0 0}
  .pair2{grid-template-columns:1fr;padding:0 20px}
  .ptitle{padding:36px 20px 26px}
  .ptxt{flex-direction:column;padding:14px 20px 0;margin-bottom:120px}
  .faq{grid-template-columns:1fr;padding:0 20px;margin-bottom:120px}
  .faq .g{grid-template-columns:1fr;gap:14px}
  .row2{grid-template-columns:1fr}
  footer{padding:30px 20px 0}
  .fcols{grid-template-columns:1fr 1fr;gap:30px 10px}
  .fnote{grid-column:1/-1}
  .fbase{padding:60px 0 30px;gap:24px;flex-wrap:wrap}
}
@media (min-width:901px){.mmenu{display:none}}

/* ---------- services page, Ogaki system ---------- */
.og{padding:0 35px}
.og-intro{position:relative;padding:110px 0 0;min-height:560px}
.og-k{font-size:13px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.og-intro h1{font-size:69px;font-weight:400;line-height:.95;letter-spacing:-.03em;max-width:950px}
.og-intro h1 .og-k{display:inline-block;vertical-align:top;margin:22px 10px 0 0;line-height:1;letter-spacing:.06em}
.og-lede{position:absolute;right:0;bottom:56px;width:470px;font-size:21px;line-height:1.35;text-transform:uppercase;letter-spacing:.01em}
.og-band{position:absolute;right:480px;bottom:200px;width:300px;height:42px;transform:rotate(-27deg);transform-origin:right center;overflow:hidden}
.og-band img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.og-rule{height:1px;background:#231E1A;opacity:.85}
.og-what{text-align:center;padding:80px 0 76px}
.og-list{list-style:none}
.og-row{display:grid;grid-template-columns:116px 1fr auto;align-items:start;padding:34px 0 40px;position:relative;border-top:1px solid rgba(35,30,26,.85)}
.og-row:last-child{border-bottom:1px solid rgba(35,30,26,.85)}
.og-row .n{font-size:21px;line-height:1.3}
.og-row h3{font-size:40px;font-weight:400;line-height:1;letter-spacing:-.02em;margin-bottom:28px}
.og-row .d{font-size:21px;line-height:1.35;text-transform:uppercase;max-width:560px}
.og-row .price{font-size:17px;margin-top:14px;color:var(--soft)}
.og-row .vm{display:inline-flex;gap:10px;align-items:center;margin-top:22px;font-size:14px;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid currentColor;padding-bottom:2px;opacity:0;transform:translateY(6px);transition:opacity .5s ease,transform .5s ease}
.og-row .ph2{width:119px;aspect-ratio:119/155;overflow:hidden;transition:width .8s cubic-bezier(.49,.62,.17,1)}
.og-row .ph2 img{width:100%;height:100%;object-fit:cover}
.og-row.noimg{grid-template-columns:116px 1fr}
@media (hover:hover){
  .og-row:hover .ph2{width:222px}
  .og-row:hover .vm{opacity:1;transform:none}
}
@media (hover:none){ .og-row .vm{opacity:1;transform:none} }
.og-sec{padding:110px 0 0}
.og-sec .og-what{padding:0 0 60px}
.og-faq .faq{padding:0;margin:0}
.og-cta{background:#E1D6CD;min-height:800px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px 35px;margin-top:140px}
.og-cta h2{font-size:55px;font-weight:400;line-height:.95;letter-spacing:-.02em;max-width:900px;margin:44px 0 60px}
.og-cta a{font-size:14px;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid currentColor;padding-bottom:2px}
.og-cta .pair{display:flex;gap:40px;flex-wrap:wrap;justify-content:center}
.og-crumb{padding:30px 35px 0;font-size:13px;text-transform:uppercase;letter-spacing:.06em}

/* letter reveal */
.split .ch{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.split .ch>span{display:inline-block;transform:translateY(105%);transition:transform .7s cubic-bezier(.22,1,.36,1);transition-delay:var(--d,0s)}
.split.in .ch>span{transform:none}
.reveal-img{opacity:0;transform:translateY(24px) scale(1.02);transition:opacity .8s cubic-bezier(.22,-.03,1,1),transform .8s cubic-bezier(.49,.62,.17,1)}
.reveal-img.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.split .ch>span{transform:none;transition:none}.reveal-img{opacity:1;transform:none;transition:none}}

@media (max-width:900px){
  .og{padding:0 20px}
  .og-intro{padding:50px 0 0;min-height:0}
  .og-intro h1{font-size:44px}
  .og-intro h1 .og-k{margin-top:12px}
  .og-lede{position:static;width:auto;font-size:18px;margin:70px 0 40px}
  .og-band{position:relative;right:auto;bottom:auto;left:0;display:block;width:210px;height:34px;margin:90px 0 0 30px;transform-origin:left center;transform:rotate(-20deg)}
  .og-what{padding:56px 0 50px}
  .og-row{grid-template-columns:44px 1fr;padding:26px 0 30px}
  .og-row .n{font-size:17px}
  .og-row h3{font-size:30px;margin-bottom:18px}
  .og-row .d{font-size:17px}
  .og-row .ph2{grid-column:2;width:150px;margin-top:22px}
  .og-row.noimg{grid-template-columns:44px 1fr}
  .og-sec{padding:70px 0 0}
  .og-cta{min-height:560px;margin-top:90px}
  .og-cta h2{font-size:38px}
}

.blocks.three{grid-template-columns:repeat(3,1fr)}
.blocks .sub{color:var(--soft);font-size:16px;margin-top:2px}
.ptxt a.u+a.u{margin-left:28px}
@media (max-width:900px){.blocks.three a{flex:0 0 62%}}

/* ---------- homepage (Suzaina + Bridelan structure) ---------- */
.h-hero{position:relative;height:calc(100vh - 80px);min-height:560px}
.h-hero .im{position:absolute;inset:0}
.h-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,0) 40%,rgba(0,0,0,.5));pointer-events:none}
.h-hero .cap{position:absolute;left:0;right:0;bottom:9%;z-index:2;text-align:center;color:#fff;padding:0 24px}
.h-hero h1{font-size:46px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;line-height:1.15}
.h-hero p{font-size:21px;margin:20px auto 0;max-width:680px;line-height:1.45}
.h-head{text-align:center;color:#6B5252;padding:120px 24px 0}
.h-head .a{display:block;font-size:44px;letter-spacing:.06em;text-transform:uppercase;line-height:1}
.h-head .b{display:block;font-size:84px;letter-spacing:.06em;text-transform:uppercase;line-height:1;margin-top:6px}
.h-head p{color:#231E1A;font-size:20px;margin:30px auto 0;max-width:620px;line-height:1.5}
.h-wide{padding:56px 20px 0}
.h-wide .im{aspect-ratio:1400/752}
.h-svc{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:120px 40px 0;max-width:1320px;margin:0 auto}
.h-svc .im{aspect-ratio:4/5}
.h-svc h3{font-size:22px;font-weight:500;text-align:center;margin-top:16px}
.h-svc p{text-align:center;font-size:15px;color:var(--soft);letter-spacing:.06em;text-transform:uppercase;margin-top:2px}
.h-svc a:hover h3{text-decoration:underline;text-underline-offset:3px}
.h-how{text-align:center;padding:44px 0 0}
.h-how a{font-size:16px;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:3px}
.h-quote{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;max-width:1100px;margin:0 auto;padding:150px 40px 0}
.h-quote blockquote{font-size:27px;line-height:1.45;color:#231E1A}
.h-quote cite{display:block;font-style:normal;font-size:18px;margin-top:22px;color:var(--soft)}
.h-quote .im{aspect-ratio:4/5}
.h-press{display:flex;justify-content:center;align-items:baseline;flex-wrap:wrap;gap:16px 56px;padding:90px 40px 0;font-size:27px;color:#231E1A}
.h-press span:nth-child(odd){font-weight:500;letter-spacing:.08em;text-transform:uppercase;font-size:24px}
.h-stories{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding:56px 40px 0;max-width:1240px;margin:0 auto}
.h-stories .im{aspect-ratio:2/3}
.h-stories h3{font-size:17px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;margin-top:18px}
.h-stories p{font-size:16px;color:var(--soft)}
.h-stories .vs{display:inline-block;margin-top:12px;font-size:16px;font-weight:500}
.h-close{background:#4A1D1F;color:#F3E9DD;text-align:center;padding:130px 24px;margin-top:150px}
.h-close h2{font-size:44px;font-weight:400;line-height:1.2;max-width:820px;margin:0 auto}
.h-close .pair{display:flex;justify-content:center;gap:44px;flex-wrap:wrap;margin-top:44px}
.h-close .pair a{font-size:16px;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:3px}
main:has(.h-close:last-child)+footer{margin-top:0}
@media (max-width:900px){
  .h-hero{height:calc(100svh - 70px);min-height:520px}
  .h-hero h1{font-size:30px;letter-spacing:.08em}
  .h-hero p{font-size:18px}
  .h-head{padding-top:80px}
  .h-head .a{font-size:28px}
  .h-head .b{font-size:46px}
  .h-head p{font-size:18px}
  .h-wide{padding:36px 0 0}
  .h-wide .im{aspect-ratio:4/5}
  .h-svc{grid-template-columns:1fr 1fr;gap:28px 12px;padding:80px 20px 0}
  .h-svc h3{font-size:19px}
  .h-svc p{font-size:13px}
  .h-quote{grid-template-columns:1fr;gap:34px;padding:90px 20px 0}
  .h-quote blockquote{font-size:22px}
  .h-press{gap:10px 26px;font-size:21px;padding:60px 20px 0}
  .h-press span:nth-child(odd){font-size:19px}
  .h-stories{grid-template-columns:1fr 1fr;gap:30px 12px;padding:40px 20px 0}
  .h-stories h3{font-size:15px}
  .h-close{padding:90px 20px;margin-top:100px}
  .h-close h2{font-size:31px}
}

/* ---- homepage type: Frankel bands, bigger titles, no letter spacing ---- */
.h-head{color:#302721;padding:90px 0 0}
.h-head .a,.h-head .b{display:inline;font-size:30px;letter-spacing:0;line-height:1.2;margin:0}
.h-head .a::after{content:" "}
.h-head h2{background:#EBE9DD;padding:12px 20px;text-transform:uppercase}
.h-head p{font-size:18px;max-width:600px;margin-top:22px;padding:0 24px}
.h-wide{padding-top:36px}
.h-svc{padding-top:44px}
.h-svc h3{font-size:18px;font-weight:400;letter-spacing:0;text-transform:uppercase}
.h-svc p{font-size:14px;letter-spacing:0}
.h-how{padding-top:30px}
.h-how a,.h-close .pair a{font-size:16px;letter-spacing:0;border:0;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:.5px}
.h-quote{padding-top:100px}
.h-quote blockquote{font-size:24px;line-height:1.55}
.h-quote cite{font-size:15px;letter-spacing:0;text-transform:uppercase}
.h-press{padding-top:70px;font-size:19px;letter-spacing:0;text-transform:uppercase;gap:14px 48px}
.h-press span:nth-child(odd){font-size:19px;font-weight:400;letter-spacing:0}
.h-stories{padding-top:40px}
.h-stories h3{font-size:17px;font-weight:400;letter-spacing:0}
.h-stories .vs{font-size:16px;font-weight:400;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:.5px}
.h-close{margin-top:110px}
.h-close h2{font-size:34px;max-width:700px}
@media (max-width:900px){
  .h-head{padding-top:64px}
  .h-head .a,.h-head .b{font-size:23px}
  .h-head p{font-size:17px}
  .h-svc,.h-stories{padding-top:30px}
  .h-svc h3{font-size:16px}
  .h-quote{padding-top:70px}
  .h-press{font-size:16px;gap:8px 22px}
  .h-press span:nth-child(odd){font-size:16px}
  .h-close{margin-top:80px}
  .h-close h2{font-size:27px}
}

/* no title band; About link; compact footer like Frankel */
.h-head h2{background:none;padding:0 20px}
.h-svc{padding-top:90px}
.h-stories{padding-top:90px}
.h-about{display:inline-block;margin-top:22px;font-size:16px;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:.5px}
footer{padding:28px 40px 0}
.fcols h4{font-size:15px;font-weight:500;letter-spacing:.02em;margin-bottom:10px}
.fcols li{line-height:1.75;font-size:15px}
.fnote p{font-size:15px;line-height:1.6}
.fbase{padding:36px 0 22px;font-size:13px;gap:28px}
@media (max-width:900px){
  .h-svc,.h-stories{padding-top:60px}
  footer{padding:24px 20px 0}
  .fcols{gap:22px 10px}
  .fbase{padding:30px 0 80px}
}

.h-feat{padding-top:90px}
.h-logos{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:28px 64px;padding:40px 40px 0;max-width:1200px;margin:0 auto}
.h-logos img{width:auto;display:block}
@media (max-width:900px){
  .h-feat{padding-top:64px}
  .h-logos{gap:24px 34px;padding:30px 20px 0}
  .h-logos img{transform:scale(.8)}
}

/* quote block: Frankel editorial split, photo half-bleed, quote on a sand panel */
.h-quote{display:grid;grid-template-columns:1fr 1fr;gap:0;max-width:none;margin:80px 0 0;padding:0;align-items:stretch}
.h-quote .im{aspect-ratio:auto;min-height:760px}
.h-quote>div:last-child{background:#ECE3D6;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:80px 12%}
.h-quote blockquote{font-size:30px;line-height:1.45;max-width:520px}
.h-quote cite{margin-top:30px}
.h-quote .h-about{margin-top:18px}
@media (max-width:900px){
  .h-quote{grid-template-columns:1fr;margin-top:60px}
  .h-quote .im{min-height:0;aspect-ratio:4/5}
  .h-quote>div:last-child{padding:56px 24px}
  .h-quote blockquote{font-size:23px}
}
.h-quote .im{order:2}
@media (max-width:900px){.h-quote .im{order:0}}

/* quote block, Frankel style: portrait centred, quote centred beneath */
.h-quote{display:block;margin:110px auto 0;padding:0 24px;max-width:none;text-align:center}
.h-quote .im{order:0;width:440px;max-width:100%;min-height:0;aspect-ratio:4/5;margin:0 auto}
.h-quote>div:last-child{background:none;display:block;padding:40px 0 0;text-align:center}
.h-quote blockquote{font-size:26px;line-height:1.5;max-width:640px;margin:0 auto}
.h-quote cite{margin-top:22px}
@media (max-width:900px){
  .h-quote{margin-top:70px;padding:0 20px}
  .h-quote .im{width:100%}
  .h-quote>div:last-child{padding:30px 0 0}
  .h-quote blockquote{font-size:22px}
}

/* As Featured In: full-width photo band, logos in ivory */
.h-featband{position:relative;margin-top:120px;min-height:560px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.h-featband>.im{position:absolute;inset:0}
.h-featband::after{content:"";position:absolute;inset:0;background:rgba(30,16,12,.62);pointer-events:none}
.fb-in{position:relative;z-index:2;text-align:center;color:#F6EEE4;padding:90px 24px;width:100%}
.fb-in h2{font-size:30px;font-weight:400;text-transform:uppercase;letter-spacing:.02em}
.h-featband .h-logos{padding:56px 40px 0;gap:36px 80px;max-width:1300px}
.h-featband .h-logos img{filter:brightness(0) invert(1);opacity:.95;transform:scale(1.55);transform-origin:center}
.h-featband .h-logos img+img{margin-left:20px}
@media (max-width:900px){
  .h-featband{margin-top:80px;min-height:0}
  .fb-in{padding:70px 20px}
  .fb-in h2{font-size:24px}
  .h-featband .h-logos{padding:36px 0 0;gap:30px 40px}
  .h-featband .h-logos img{transform:scale(1.05)}
  .h-featband .h-logos img+img{margin-left:0}
}
.h-stories{padding-top:110px}
/* tree photo shows clearly: taller band, lighter shade */
.h-featband{min-height:820px}
.h-featband::after{background:linear-gradient(rgba(20,12,8,.18),rgba(20,12,8,.48))}
.fb-in h2,.h-featband .h-logos img{filter:drop-shadow(0 1px 8px rgba(0,0,0,.35))}
.h-featband .h-logos img{filter:brightness(0) invert(1) drop-shadow(0 1px 8px rgba(0,0,0,.4))}
@media (max-width:900px){.h-featband{min-height:620px}}

.h-featband{min-height:540px}
@media (max-width:900px){.h-featband{min-height:460px}}
.h-featband::after{background:linear-gradient(rgba(20,12,8,.12),rgba(20,12,8,.38))}
/* closing line on the page itself, no colour block */
.h-close{background:none;color:#231E1A;padding:120px 24px 110px;margin-top:0}
.h-close h2{font-size:38px;max-width:760px}
.h-close .pair a{color:#231E1A}
@media (max-width:900px){.h-close{padding:80px 20px 70px}.h-close h2{font-size:28px}}
/* footer stands apart from the page */
footer{background:#EFEBE3;margin-top:0}
/* closing: smaller and quieter */
.h-close{padding:80px 24px 70px}
.h-close h2{font-size:24px;line-height:1.4;max-width:560px}
.h-close .pair{margin-top:22px;gap:32px}
.h-close .pair a{font-size:14px}
@media (max-width:900px){.h-close{padding:60px 20px 50px}.h-close h2{font-size:21px}}

/* privacy + terms */
.legal{max-width:720px;margin:0 auto;padding:70px 24px 110px}
.legal h1{font-size:34px;font-weight:500}
.legal .upd{color:var(--soft);font-size:15px;margin:6px 0 40px}
.legal h2{font-size:21px;font-weight:500;margin:34px 0 10px}
.legal p{margin-bottom:12px;line-height:1.65}
@media (max-width:900px){.legal{padding:46px 20px 80px}.legal h1{font-size:28px}}

/* privacy + terms in a box */
dialog.lgl{border:0;padding:0;max-width:760px;width:calc(100% - 40px);max-height:82vh;margin:auto;background:var(--bg);color:#231E1A;box-shadow:0 30px 80px rgba(0,0,0,.25);opacity:0;transform:translateY(12px);transition:opacity .25s ease,transform .25s ease}
dialog.lgl[open]{opacity:1;transform:none}
dialog.lgl::backdrop{background:rgba(25,18,14,.45)}
.lgl-in{max-height:82vh;overflow:auto;padding:10px 10px}
.lgl-in .legal{padding:46px 40px 50px}
.lgl-x{position:absolute;top:16px;right:16px;width:30px;height:30px;background:none;border:0;cursor:pointer;z-index:2}
.lgl-x::before,.lgl-x::after{content:"";position:absolute;left:5px;right:5px;top:50%;height:1px;background:#231E1A;transform:rotate(45deg)}
.lgl-x::after{transform:rotate(-45deg)}
@media (max-width:900px){.lgl-in .legal{padding:40px 22px 40px}}
/* project story page */
.story{max-width:640px;margin:0 auto;padding:110px 40px 120px;text-align:center}
.story .meta{font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--soft);margin-bottom:34px}
.story p{font-size:20px;line-height:1.65;margin-bottom:22px}
.story .lead{font-size:30px;line-height:1.3;margin-bottom:34px}
.solo{max-width:760px;margin:4px auto 0;padding:0 40px}
.solo .im{aspect-ratio:3/4}
@media(max-width:800px){.story{padding:70px 24px 80px}.story p{font-size:18px}.story .lead{font-size:25px}.solo{padding:0 20px}}
.solo.s45 .im{aspect-ratio:4/5}
.film{padding:0 40px 120px;display:flex;justify-content:center}
.film-in{position:relative;width:min(460px,100%)}
.film video{display:block;width:100%;aspect-ratio:9/16;object-fit:cover;background:#e9e3da}
.snd{position:absolute;right:14px;bottom:14px;background:rgba(250,247,242,.88);border:0;font:inherit;font-size:14px;letter-spacing:.06em;text-transform:uppercase;padding:8px 12px;cursor:pointer;color:var(--ink,#1c1a18)}
@media(max-width:800px){.film{padding:0 20px 80px}}
.h-arch{padding-top:110px}.h-arch+.h-stories{padding-top:44px}
@media(max-width:800px){.h-arch{padding-top:70px}.h-arch+.h-stories{padding-top:28px}}
/* back link: Frankel caret, turned left */
.back{padding:16px 40px 0}
.back a{display:inline-flex;align-items:center;gap:8px;font-size:14px;letter-spacing:.6px;color:#302721;text-decoration:none}
.back a:hover{text-decoration:underline;text-underline-offset:3px}
.caret-l{width:10px;height:6px;transform:rotate(90deg);flex:none}
/* archive grid, replica of the Frankel collection grid */
.ag-wrap{width:81%;max-width:1320px;margin:0 auto;padding:22px 0 140px}
.ag-top{padding:6px 0 30px}
.ag-top h1{font-size:22px;font-weight:400;letter-spacing:.6px;line-height:1.3}
.ag{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);column-gap:2.9vw;row-gap:52px;margin:0;padding:0}
.ag a{display:block;text-decoration:none;color:#302721}
.ag .im{aspect-ratio:4/5}
.ag-t{display:block;margin-top:7px;font-size:15px;letter-spacing:.6px}
.ag a:hover .ag-t{text-decoration:underline;text-underline-offset:3px}
/* story page, replica of the Frankel product page */
.pd{display:grid;grid-template-columns:1fr 1fr;align-items:start}
.pd-info{position:sticky;top:50px;height:calc(100vh - 50px);display:flex;flex-direction:column;justify-content:space-between;padding:0 25px 0 15px}
.pd-back{padding:16px 0 0}
.pd-bottom{padding-bottom:0}
.pd-cols{display:grid;grid-template-columns:42% 1fr;gap:30px}
.pd-cr{display:grid;grid-template-columns:auto auto;column-gap:34px;row-gap:12px;align-content:start;justify-content:space-between}
.pd-cr h2{margin-bottom:10px}
.pd-cr .r,.pd-cr .w{font-size:14px;line-height:1.36;letter-spacing:.6px}
.pd-cr .w a{display:block;text-decoration:underline;text-underline-offset:2px}
.pd h1{font-size:15px;font-weight:400;letter-spacing:.6px;text-transform:uppercase;line-height:1.3;margin-bottom:22px}
.pd h2{font-size:15px;font-weight:400;letter-spacing:.6px;text-transform:uppercase;line-height:1.3;margin-bottom:22px}
.pd-desc p{font-size:14px;line-height:1.36;letter-spacing:.6px;margin-bottom:10px}
.pd-desc p.lead{font-size:14px;line-height:1.36}
.pd-desc a.u{text-decoration:underline;text-underline-offset:2px}
.pd-c2 ul,.pd-c3 ul{list-style:none;margin:0;padding:0}
.pd-c2 li,.pd-c3 li{font-size:14px;line-height:1.36;letter-spacing:.6px;margin-bottom:12px;min-height:19px}
.pd-c3 a{text-decoration:underline;text-underline-offset:2px;display:block}
.pd-c3 li{min-height:19px}
.pd-btn{display:block;text-align:center;font-size:15px;letter-spacing:.6px;text-transform:uppercase;padding:8px 0;text-decoration:none;color:#302721}
.pd-btn1{background:#D3CABA;margin-top:22px}
.pd-btn2{background:#EAE6DC;margin-top:6px;margin-bottom:15px}
.pd-btn:hover{opacity:.85}
.pd-media{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px}
.pm{margin:0}
.pm-full{width:100%}
.pm-half{width:calc(50% - 2px)}
.pm .im{aspect-ratio:4/5}
.pm .film-in{position:relative}
.pm video{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:#e9e3da}
@media(max-width:900px){
 .back{padding:14px 20px 0}
 .ag-wrap{width:auto;padding:16px 20px 100px}
 .ag-top h1{font-size:18px}
 .ag{grid-template-columns:1fr 1fr;column-gap:12px;row-gap:34px}
 .ag-t{font-size:13px}
 .pd{display:flex;flex-direction:column}
 .pd-info{display:contents}
 .pd-back{order:0;padding:14px 20px 12px}
 .pd-media{order:1;width:100%}
 .pd-bottom{order:2;padding:0 20px}
 .pd-cols{grid-template-columns:1fr;gap:26px;margin-top:30px}
 .pd-c3 li{min-height:0}
 .pd-btn2{margin-bottom:60px}
}

/* left panel reads like an article */
.pd-info{overflow-y:auto;scrollbar-width:none;padding:0 15px}
.pd-info::-webkit-scrollbar{display:none}
.pd-back{position:absolute;top:0;left:15px}
.pd-info{position:sticky}
.pd-article{max-width:430px;margin:auto;padding:90px 0 80px;text-align:center}
.pd-article h1{font-size:28px;letter-spacing:.14em;line-height:1.3;margin-bottom:12px}
.pd-sub{font-size:15px;color:var(--soft);letter-spacing:.04em}
.pd-sub::after{content:"";display:block;width:6px;height:6px;border-radius:50%;background:#C9BBA6;margin:30px auto 32px}
.pd-article .pd-desc p{font-size:16.5px;line-height:1.75;margin-bottom:18px}
.pd-article .pd-desc p.lead{font-size:21px;line-height:1.5;margin-bottom:24px;color:#302721}
.pd-credits{margin-top:56px}
.pd-credits h2{font-size:15px;letter-spacing:.14em;margin-bottom:26px}
.cg{display:grid;grid-template-columns:1fr 1fr;gap:22px 24px}
.cb .r{display:block;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--soft);margin-bottom:4px}
.cb a{display:block;font-size:15.5px;text-decoration:none;color:#302721;line-height:1.45;word-break:break-word}
.cb a:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:.5px}
@media(max-width:900px){
 .pd-back{position:static}
 .pd-info{padding:0}
 .pd-article{order:2;max-width:none;padding:40px 24px 80px}
 .pd-article h1{font-size:23px}
 .pd-article .pd-desc p.lead{font-size:19px}
 .cg{gap:20px 14px}
}

/* fit the left panel and the first photo to the screen (desktop) */
@media(min-width:901px){
 .pd-info{height:var(--avail,calc(100vh - 50px));overflow:hidden}
 .pd-article{--k:1;margin:auto;padding:calc(54px*var(--k)) 0 calc(24px*var(--k))}
 .pd-article h1{font-size:calc(28px*var(--k));margin-bottom:calc(10px*var(--k))}
 .pd-sub{font-size:calc(15px*var(--k))}
 .pd-sub::after{margin:calc(22px*var(--k)) auto calc(24px*var(--k))}
 .pd-article .pd-desc p{font-size:calc(16.5px*var(--k));line-height:1.65;margin-bottom:calc(14px*var(--k))}
 .pd-article .pd-desc p.lead{font-size:calc(21px*var(--k));margin-bottom:calc(18px*var(--k))}
 .pd-credits{margin-top:calc(36px*var(--k))}
 .pd-credits h2{font-size:calc(15px*var(--k));margin-bottom:calc(18px*var(--k))}
 .cg{grid-template-columns:repeat(3,1fr);gap:calc(16px*var(--k)) 18px}
 .cb .r{font-size:calc(12px*var(--k))}
 .cb a{font-size:calc(15px*var(--k))}
 .pd-article{max-width:470px}
 .pd-media .pm-full:first-child .im,.pd-media .pm-full:first-child video{aspect-ratio:auto;height:var(--first,calc(100vh - 50px))}
}
/* never break an @handle */
.cb a{white-space:nowrap;word-break:normal;overflow-wrap:normal}
@media(min-width:901px){
 .pd-credits{width:max-content;max-width:calc(50vw - 40px);position:relative;left:50%;transform:translateX(-50%)}
 .cg{grid-template-columns:repeat(3,max-content);justify-content:center;column-gap:34px}
}
@media(max-width:900px){.cg{grid-template-columns:1fr 1fr}.cb a{white-space:normal;overflow-wrap:anywhere}}
/* iPhone order: title, one photo, caption, photos, credits */
@media(max-width:900px){
 .pd{display:flex;flex-direction:row;flex-wrap:wrap;gap:4px}
 .pd-info,.pd-article,.pd-media{display:contents}
 .pd-back{order:0;width:100%;padding:14px 20px 4px}
 .pd-article h1{order:1;width:100%;text-align:center;padding:18px 20px 0;margin:0}
 .pd-sub{order:2;width:100%;text-align:center;padding:0 20px 18px}
 .pd-sub::after{display:none}
 .pd-media .pm:first-child{order:3}
 .pd-desc{order:4;width:100%;text-align:center;padding:34px 24px 24px}
 .pd-media .pm{order:5}
 .pd-media .pm:first-child{order:3}
 .pd-credits{order:6;width:100%;text-align:center;padding:40px 24px 80px;margin:0}
}
@media(max-width:900px){.cg{grid-template-columns:1fr;gap:18px}.cb a{white-space:nowrap;overflow-wrap:normal}}
/* ---- homepage from Amneet down, matched to the story pages ---- */
.hq2{display:grid;grid-template-columns:1fr 1fr;margin-top:110px;height:min(calc(100vh - 50px),860px);min-height:600px}
.hq2-t{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px 9%}
.hq2-k{font-size:26px;letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
.hq2-s{font-size:15px;color:var(--soft);letter-spacing:.04em;margin-top:8px}
.hq2-s::after{content:"";display:block;width:6px;height:6px;border-radius:50%;background:#C9BBA6;margin:28px auto 30px}
.hq2 blockquote{font-size:22px;line-height:1.55;max-width:440px;color:#302721}
.hq2-l{margin-top:30px;font-size:15px;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:.5px}
.hq2>.im{height:100%;aspect-ratio:auto}
.hf2{text-align:center;padding:130px 40px 0}
.hf2 p{font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--soft)}
.hf2-l{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:26px 60px;margin-top:30px;opacity:.85}
.hf2-l img{width:auto;display:block}
.ha2{width:81%;max-width:1320px;margin:0 auto;padding:140px 0 0}
.ha2-top{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:26px}
.ha2-top h2{font-size:22px;font-weight:400;letter-spacing:.6px}
.ha2-top a{font-size:15px;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:.5px}
.ha2-g{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.ha2-g a{display:block;text-decoration:none;color:#302721}
.ha2-g .im{aspect-ratio:4/5}
.ha2-g span{display:block;margin-top:7px;font-size:15px;letter-spacing:.6px}
.ha2-g a:hover span{text-decoration:underline;text-underline-offset:3px}
.hc2{text-align:center;padding:150px 24px 140px}
.hc2 p{font-size:24px;line-height:1.45;max-width:560px;margin:0 auto}
.hc2 div{display:flex;justify-content:center;gap:36px;margin-top:26px;flex-wrap:wrap}
.hc2 a{font-size:15px;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:.5px}
@media(max-width:900px){
 .hq2{grid-template-columns:1fr;height:auto;min-height:0;margin-top:80px}
 .hq2>.im{order:-1;height:auto;aspect-ratio:4/5}
 .hq2-t{padding:44px 24px 0}
 .hq2-k{font-size:21px}
 .hq2 blockquote{font-size:19px}
 .hf2{padding:90px 20px 0}
 .hf2-l{gap:22px 30px}.hf2-l img{transform:scale(.8)}
 .ha2{width:auto;padding:100px 20px 0}
 .ha2-top h2{font-size:18px}
 .ha2-g{grid-template-columns:1fr 1fr;gap:28px 12px}
 .ha2-g span{font-size:13px}
 .hc2{padding:100px 24px 100px}.hc2 p{font-size:20px}
}
/* smaller footer */
footer{padding:22px 40px 0}
.fcols{grid-template-columns:repeat(3,max-content);column-gap:110px}
.fcols h4{font-size:13.5px;margin-bottom:6px}
.fcols li{font-size:13.5px;line-height:1.6}
.fbase{padding:24px 0 16px;font-size:12px;gap:24px}
@media(max-width:900px){
 footer{padding:20px 20px 0}
 .fcols{grid-template-columns:1fr 1fr;column-gap:10px;row-gap:16px}
 .fbase{padding:22px 0 70px;gap:16px}
}
/* footer wordmark: AMNEET / THE CURATOR at equal width */
.fcols{grid-template-columns:repeat(3,max-content) 1fr}
.fmark{justify-self:end;align-self:center;display:block;width:min(34vw,470px);color:#302721}
.fmark svg{display:block;width:100%;height:auto;overflow:visible}
.fmark text{font-family:var(--mark);font-weight:500;font-size:62px;fill:currentColor}
@media(max-width:900px){
 .fcols{grid-template-columns:1fr 1fr}
 .fmark{grid-column:1 / -1;justify-self:stretch;width:100%;margin-top:18px}
}
/* smaller stacked wordmark */
.fmark{width:210px;align-self:start;margin-top:2px}
.fmark text{font-size:inherit}
.fmark .m1{font-size:46px}
.fmark .m2{font-size:23px}
.fcols li{color:#302721}
@media(max-width:900px){.fmark{width:170px;justify-self:start;grid-column:1 / -1;margin-top:20px}}
.fcols{grid-template-columns:repeat(4,max-content);column-gap:110px}
@media(max-width:900px){.fcols{grid-template-columns:1fr 1fr;column-gap:10px}}
/* footer spread across the full width, bottom line split left/right */
footer{padding:26px 40px 0}
.fcols{grid-template-columns:repeat(4,1fr);column-gap:40px}
.fbase{justify-content:space-between;padding:26px 0 18px;margin-top:22px}
@media(max-width:900px){
 footer{padding:22px 20px 0}
 .fcols{grid-template-columns:1fr 1fr;column-gap:16px;row-gap:20px}
 .fbase{justify-content:space-between;flex-wrap:nowrap;padding:22px 0 60px;margin-top:6px}
}
/* thin footer */
footer.ft{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 40px;font-size:13px;letter-spacing:.03em;background:#EFEBE3;margin-top:0}
.ft-l,.ft-r{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.ft a{text-decoration:none;color:#302721}
.ft a:hover{text-decoration:underline;text-underline-offset:3px}
.ft-r span{color:#302721}
.ft .ft-web{color:#8a8178}
@media(max-width:900px){
 footer.ft{flex-direction:column;gap:8px;padding:14px 16px 16px;font-size:12px;text-align:center}
 .ft-l{justify-content:center;gap:6px 14px}
 .ft-r{justify-content:center;gap:12px;color:#8a8178}
}
/* ---- menu, matched to the logo ---- */
.hdr ul{font-size:13px;letter-spacing:.16em;text-transform:uppercase;gap:34px}
.hdr li>a{padding:4px 0}
.hdr li>a:hover,.hdr li.open>a{text-decoration:none;opacity:.6}
.m-right{font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.mega.mg2{width:460px;padding:44px 40px 40px;justify-content:flex-start;gap:40px;box-shadow:none}
.mg2 .cols{gap:56px}
.mg2 .col{gap:9px;font-size:15px;min-width:0}
.mg2 .mh{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--soft);margin-bottom:8px}
.mg2 .col a:hover{text-decoration:none;opacity:.6}
.mg2 .pics a{width:100%}
.mg2 .pics .im{width:100%;height:auto;aspect-ratio:4/5;max-height:46vh}
.mg2 .pics span{font-size:14px;margin-top:8px}
@media(max-width:900px){
 .mm2{display:block;overflow-y:auto;padding:22px 24px 40px}
 .mm2 .mg{display:flex;flex-direction:column;gap:12px;padding:0 0 30px}
 .mm2 .mh{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--soft);margin-bottom:2px}
 .mm2 a{font-size:17px;color:var(--ink)}
 .mm2 .mg-end{flex-direction:row;gap:28px;padding-top:6px}
 .mm2 .mg-end a{font-size:12px;letter-spacing:.16em;text-transform:uppercase}
}
@media(max-width:900px){.hdr .logo{font-size:14px;letter-spacing:.26em}.m-right{font-size:11px;letter-spacing:.14em}.hdr{grid-template-columns:40px 1fr 64px}}
/* about page in the story layout; text is long so it scrolls with the page */
.pd-long .pd-info{position:static;height:auto;overflow:visible}
.pd-long .pd-article{position:sticky;top:60px;padding-top:60px}
.pd-long .pd-desc p{font-size:16px;line-height:1.75;margin-bottom:16px}
.ab-h{font-size:14px;letter-spacing:.14em;text-transform:uppercase;font-weight:400;margin:34px 0 14px;color:#302721}
.ab-cta{margin-top:30px}
.ab-cta a{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:.5px}
@media(max-width:900px){.pd-long .pd-article{position:static;padding-top:30px}}
.pd-long .pd-back{position:static;padding:16px 0 0}.pd-long .pd-article{padding-top:30px}
/* Selected Work, styled on the Frankel appointments row */
.sw{padding:140px 0 0}
.sw h2{text-align:center;font-size:22px;font-weight:400;letter-spacing:.6px;margin-bottom:56px}
.sw-g{display:grid;grid-template-columns:1fr 1fr;column-gap:12.8vw;row-gap:90px;padding:0 5.4vw}
.sw-c{text-align:center}
.sw-cap{font-size:15px;letter-spacing:.03em;color:#302721;margin-bottom:14px}
.sw-cap b{font-weight:500;letter-spacing:.06em}
.sw-ph{display:block}
.sw-ph .im{aspect-ratio:992/1231}
.sw-l{display:inline-block;margin-top:12px;font-size:15px;letter-spacing:.08em;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:.5px;color:#302721}
@media(max-width:900px){
 .sw{padding:100px 0 0}.sw h2{font-size:19px;margin-bottom:34px}
 .sw-g{grid-template-columns:1fr;row-gap:56px;padding:0 20px}
 .sw-cap{font-size:13.5px}
}
/* Selected Work: replica of the Frankel collection slider */
.hs{padding:19px 0 19px;margin-top:120px}
.hs-wrap{position:relative}
.hs-track{display:flex;gap:16px;overflow-x:auto;scrollbar-width:none;padding:0 16px;cursor:grab;scroll-behavior:smooth;user-select:none}
.hs-track.drag{cursor:grabbing;scroll-behavior:auto}
.hs-track::-webkit-scrollbar{display:none}
.hs-slide{flex:none}
.hs-img{display:block}
.hs-img img{display:block;height:80vh;width:auto;max-width:none}
.hs-cap{display:flex;gap:8px;margin-top:8px;font-size:12.5px;letter-spacing:.6px;color:#302721}
.hs-arrow{position:absolute;top:calc(40vh - 25px);width:80px;height:50px;padding:16px;background:none;border:0;cursor:pointer;z-index:2;transition:opacity .25s}
.hs-prev{left:4px}.hs-next{right:4px}
.hs-arrow svg{width:48px;height:32px;display:block}
.hs-arrow path{stroke:#fff;stroke-width:1;fill:none;stroke-linecap:round;stroke-linejoin:round}
.hs-next svg{transform:scale(-1,-1)}
.hs-arrow[disabled]{opacity:0;pointer-events:none}
.hs-link{text-align:center;padding-top:22px}
.hs-link a{font-size:14px;letter-spacing:.6px;text-decoration:underline;color:#302721}
@media(max-width:900px){
 .hs{margin-top:80px}
 .hs-img img{height:min(115vw,68vh)}
 .hs-track{gap:8px;padding:0 12px}
 .hs-arrow{display:none}
}
/* own arrow: hairline ending in a small open diamond, like a jewel drop */
.hs-arrow svg{width:56px;height:19px}
.hs-arrow circle{fill:#fff;stroke:none}
.hs-next svg{transform:none}
.hs-prev svg{transform:scaleX(-1)}
.hs-arrow svg{transition:transform .45s cubic-bezier(.22,.61,.36,1)}
.hs-next:hover svg{transform:translateX(5px)}
.hs-prev:hover svg{transform:scaleX(-1) translateX(5px)}
/* slow zoom on hover */
.hs-img{overflow:hidden}
.hs-img img{transition:transform 1.4s cubic-bezier(.22,.61,.36,1)}
@media(hover:hover){.hs-img:hover img{transform:scale(1.045)}}
.hs-arrow{padding:15px 12px;width:84px}.hs-arrow svg{overflow:visible}.hs-next{right:10px}.hs-prev{left:10px}
/* one photo per story, hover shows the second photo */
.hs-img{position:relative}
.hs-img img{transition:none}
@media(hover:hover){.hs-img:hover img{transform:none}}
.hs-img .hs-alt{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease}
@media(hover:hover){.hs-img:hover .hs-alt{opacity:1}}
/* refined > arrow */
.hs-arrow{width:56px;height:72px;padding:20px;top:calc(40vh - 36px)}
.hs-arrow svg{width:16px;height:32px;margin:0 auto}
.hs-arrow path{stroke-width:1.1}
.hs-next{right:12px}.hs-prev{left:12px}
.hs-next:hover svg{transform:translateX(4px)}
.hs-prev:hover svg{transform:scaleX(-1) translateX(4px)}
/* gallery page, tightened: one row of four, one matted print, hover swap */
.ag-wrap{width:auto;max-width:none;padding:10px 40px 150px}
.ag-top{display:flex;justify-content:space-between;align-items:baseline;padding:18px 0 34px}
.ag-top h1{font-size:13px;letter-spacing:.16em;text-transform:uppercase;font-weight:400}
.ag-top p{font-size:14px;color:var(--soft)}
.ag.ag4{grid-template-columns:repeat(4,1fr);column-gap:16px;row-gap:40px}
.ag-f{display:block;position:relative;overflow:hidden;aspect-ratio:4/5;background:#E6DDCF}
.ag-f .im{position:absolute;inset:0;aspect-ratio:auto;height:100%}
.ag-mat .ag-f .im,.ag-mat .ag-f .ag-alt{inset:9% 11%;width:auto;height:auto}
.ag-alt{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease}
@media(hover:hover){.ag a:hover .ag-alt{opacity:1}.ag a:hover .ag-t{text-decoration:none}}
.ag-t{display:block;margin-top:10px;font-size:15px;font-weight:500;letter-spacing:.03em}
.ag-s{display:block;font-size:14px;color:var(--soft);margin-top:1px}
@media(max-width:900px){.ag-wrap{padding:10px 16px 100px}.ag.ag4{grid-template-columns:1fr 1fr;column-gap:8px;row-gap:28px}.ag-top p{display:none}.ag-t{font-size:14px}.ag-s{font-size:12.5px}}
.pm-v video{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:#1c1a18}
/* ---- About, editorial layout ---- */
.ab-hero{display:grid;grid-template-columns:1fr 1fr;height:calc(100vh - 50px);min-height:620px}
.ab-hero-ph .im{height:100%;aspect-ratio:auto}
.ab-hero-t{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:60px 9%}
.ab-hero-t h1{font-size:30px;font-weight:400;letter-spacing:.16em;text-transform:uppercase}
.ab-sub{font-size:15px;color:var(--soft);margin-top:8px}
.ab-sub::after{content:"";display:block;width:6px;height:6px;border-radius:50%;background:#C9BBA6;margin:28px auto 30px}
.ab-hero-t p:not(.ab-sub){font-size:16.5px;line-height:1.75;max-width:440px;margin-bottom:14px}
.ab-quote{padding:150px 24px;text-align:center}
.ab-quote blockquote{font-size:30px;line-height:1.4;max-width:760px;margin:0 auto;color:#302721}
.ab-row{display:grid;align-items:start;padding:0 40px 160px;max-width:1360px;margin:0 auto}
.ab-row figure{margin:0}
.ab-txt h2{font-size:14px;letter-spacing:.16em;text-transform:uppercase;font-weight:400;margin-bottom:22px}
.ab-txt p{font-size:16.5px;line-height:1.75;margin-bottom:14px}
.ab-r1{grid-template-columns:3fr 4fr 4fr;column-gap:6vw}
.ab-r1 .ab-sm{margin-top:160px}
.ab-r1 .ab-sm video{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}
.ab-r1 .ab-txt{padding-top:40px}
.ab-r1 .ab-tall .im{aspect-ratio:3/4}
.ab-r2{grid-template-columns:4fr 6fr;column-gap:8vw;align-items:center}
.ab-big{position:relative}
.ab-big>.im{aspect-ratio:4/5}
.ab-inset{position:absolute;left:-14%;bottom:-70px;width:38%;box-shadow:0 0 0 10px var(--bg)}
.ab-inset video{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}
.ab-link{display:inline-block;margin-top:22px;font-size:15px;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:.5px}
@media(max-width:900px){
 .ab-hero{grid-template-columns:1fr;height:auto;min-height:0}
 .ab-hero-ph .im{aspect-ratio:4/5;height:auto}
 .ab-hero-t{padding:44px 24px 0}.ab-hero-t h1{font-size:23px}
 .ab-quote{padding:90px 24px}.ab-quote blockquote{font-size:22px}
 .ab-row{grid-template-columns:1fr !important;padding:0 20px 90px;row-gap:34px}
 .ab-r1 .ab-sm{margin:0;width:60%}.ab-r1 .ab-txt{padding-top:0}
 .ab-r1 .ab-tall{width:80%;justify-self:end}
 .ab-inset{left:auto;right:-6px;bottom:-40px;width:42%}
 .ab-r2 .ab-big{order:-1}
}

/* Spectral: Canela-like light text */
body{font-weight:300;font-size:16px;letter-spacing:.01em}
h1,h2,h3,h4,b,strong{font-weight:400}
.ag-t,.sw-cap b,.hdr ul,.m-right{font-weight:400}
.h-hero h1{font-family:var(--mark)}
/* links: warm brown instead of underlines */
:root{--link:#9A6A45;--link-h:#6E4529}
a,a *{text-decoration:none !important}
.u,.iwt .more,.h-how a,.h-close .pair a,.h-stories .vs,.h-about,.pd-cr .w a,.pd-desc a.u,.pd-c3 a,.hq2-l,.ha2-top a,.hc2 a,.ab-cta a,.sw-l,.hs-link a,.ab-link,.lgl a,.legal a,.st-body a,.cb a{color:var(--link) !important;transition:color .25s}
.u:hover,.iwt .more:hover,.h-how a:hover,.h-close .pair a:hover,.h-about:hover,.pd-cr .w a:hover,.pd-desc a.u:hover,.hq2-l:hover,.ha2-top a:hover,.hc2 a:hover,.ab-cta a:hover,.sw-l:hover,.hs-link a:hover,.ab-link:hover,.lgl a:hover,.legal a:hover,.cb a:hover{color:var(--link-h) !important}
.hdr li>a,.mega .col a,.back a,.ft a,.mm2 a,.ag-t,.ha2-g span,.hs-cap,.mt-t,.blocks h3,.h-svc h3{transition:color .25s,opacity .25s}
.hdr li>a:hover,.hdr li.open>a,.mega .col a:hover,.back a:hover,.ft a:hover,.mm2 a:hover,.ag a:hover .ag-t,.ha2-g a:hover span,.mt:hover .mt-t,.blocks a:hover h3,.h-svc a:hover h3{color:var(--link) !important;opacity:1}
.h-svc h3{white-space:nowrap;font-size:clamp(13px,1.3vw,18px);letter-spacing:.04em}
@media(max-width:900px){.h-svc h3{white-space:normal;font-size:15px}}
@media(min-width:901px){.h-svc{grid-template-columns:repeat(4,minmax(0,1fr))}.h-svc h3{font-size:clamp(12px,1.2vw,17px);letter-spacing:.03em}}
@media(min-width:901px){.h-svc h3{font-size:clamp(12px,1.2vw,16.5px)}}
/* closing: photo of heirloom jewellery beside the line */
.hc3{display:grid;grid-template-columns:1fr 1fr;margin-top:140px;height:min(78vh,760px);min-height:520px}
.hc3>.im{height:100%;aspect-ratio:auto}
.hc3-t{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px 10%}
.hc3-t p{font-size:28px;line-height:1.4;max-width:460px;color:#302721}
.hc3-t div{display:flex;gap:34px;margin-top:30px;flex-wrap:wrap;justify-content:center}
.hc3-l{font-size:15px;letter-spacing:.04em;color:var(--link) !important}
.hc3-l:hover{color:var(--link-h) !important}
@media(max-width:900px){
 .hc3{grid-template-columns:1fr;height:auto;min-height:0;margin-top:90px}
 .hc3>.im{aspect-ratio:4/5;height:auto}
 .hc3-t{padding:40px 24px 80px}.hc3-t p{font-size:22px}
}
/* Instagram strip */
.ig{padding:140px 0 0}
.ig-top{display:flex;justify-content:space-between;align-items:baseline;padding:0 16px 14px}
.ig-top a{font-size:15px;letter-spacing:.03em;color:#302721}
.ig-top .ig-f{color:var(--link) !important}
.ig-g{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}
.ig-g a{display:block;overflow:hidden}
.ig-g .im{aspect-ratio:1/1;transition:opacity .4s}
.ig-g a:hover .im{opacity:.85}
@media(max-width:900px){.ig{padding:90px 0 0}.ig-top{padding:0 12px 12px}.ig-g{grid-template-columns:repeat(3,1fr);gap:3px}}
/* Instagram section, styled on Styled by Suzaina's */
.ig2{padding:150px 0 110px;text-align:center}
.ig2 h2{font-size:30px;font-weight:300;line-height:1.35;max-width:640px;margin:0 auto;color:#302721}
.ig2-p{display:flex;justify-content:center;align-items:center;gap:22px;margin:44px 0 40px}
.ig2-av{display:block;width:58px;height:58px;border-radius:50%;overflow:hidden;flex:none;box-shadow:0 0 0 2px var(--bg),0 0 0 3px #C9A98A}
.ig2-av .im{width:100%;height:100%;aspect-ratio:auto}
.ig2-u{font-size:19px;letter-spacing:.02em;color:#302721}
.ig2-f{display:inline-flex;align-items:center;gap:8px;font-size:16px;color:var(--link) !important}
.ig2-f:hover{color:var(--link-h) !important}
.ig2 svg rect,.ig2 svg circle{fill:none;stroke:currentColor;stroke-width:1.5}
.ig2 svg .d{fill:currentColor;stroke:none}
.ig2-f svg{width:20px;height:20px}
.ig2-wrap{position:relative;max-width:1520px;margin:0 auto;padding:0 40px}
.ig2-row{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}
.ig2-row::-webkit-scrollbar{display:none}
.ig2-c{position:relative;flex:0 0 calc((100% - 36px)/4);scroll-snap-align:start;border-radius:6px;overflow:hidden;display:block}
.ig2-c>.im{aspect-ratio:4/5;transition:transform 1.2s cubic-bezier(.22,.61,.36,1)}
.ig2-c:hover>.im{transform:scale(1.03)}
.ig2-b{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:12px;padding:60px 20px 18px;background:linear-gradient(to top,rgba(20,14,10,.55),rgba(20,14,10,0));color:#fff;text-align:left}
.ig2-b .ig2-av{width:38px;height:38px;box-shadow:0 0 0 2px #fff}
.ig2-n{flex:1;font-size:16px;letter-spacing:.02em}
.ig2-i svg{width:24px;height:24px;display:block}
.ig2-nx{position:absolute;right:56px;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:0;background:rgba(248,248,244,.85);cursor:pointer;display:flex;align-items:center;justify-content:center}
.ig2-nx svg{width:9px;height:18px}
.ig2-nx path{fill:none;stroke:#302721;stroke-width:1.6}
.ig2-links{display:flex;justify-content:center;gap:34px;margin-top:44px}
.ig2-links a{font-size:15px;letter-spacing:.04em;color:var(--link) !important}
.ig2-links a:hover{color:var(--link-h) !important}
@media(max-width:900px){
 .ig2{padding:90px 0 70px}.ig2 h2{font-size:22px;padding:0 24px}
 .ig2-p{gap:14px;margin:30px 0 26px}.ig2-av{width:46px;height:46px}.ig2-u{font-size:16px}
 .ig2-wrap{padding:0 16px}.ig2-c{flex-basis:78%}.ig2-nx{display:none}
 .ig2-links{gap:22px;flex-wrap:wrap}
}
.ig2-s{font-size:16px;color:var(--soft)}
.ig2-s b{font-weight:500;color:#302721;margin-right:4px}
@media(max-width:900px){.ig2-p{flex-wrap:wrap;gap:10px 14px;padding:0 20px}.ig2-s{font-size:14px}}
.ig2{padding-top:72px}
@media(max-width:900px){.ig2{padding-top:52px}}
.ig2-links{margin:0 0 30px}
@media(max-width:900px){.ig2-links{margin:0 0 22px}}
.hs.hs-page{margin-top:24px}
.hs-img video{display:block;height:80vh;width:auto;max-width:none;object-fit:cover;background:#e9e4da}
@media(max-width:900px){.hs.hs-page{margin-top:8px}}
@media(max-width:900px){.hs-img video{height:min(115vw,68vh)}}
@media(min-width:901px){.hs-page .hs-img img,.hs-page .hs-img video{height:max(420px,calc(100vh - 225px))}.hs-page .hs-arrow{top:calc(50vh - 150px)}}
.mg2 a.mh,.mm2 a.mh{display:block;color:var(--soft)}
.mg2 a.mh:hover,.mm2 a.mh:hover{color:var(--link-h)}
.hw .ag-t{display:flex;align-items:baseline;gap:12px;margin-top:14px}
.hw-n{font-family:var(--mark);font-size:24px;font-weight:400;color:var(--link);min-width:30px}
.hw-d{font-size:14.5px;line-height:1.6;color:var(--soft);margin-top:8px;max-width:34ch}
@media(hover:hover){.hw li:hover .ag-alt{opacity:1}}
.hw-links{display:flex;justify-content:center;gap:34px;margin-top:70px}
.hw-links a{font-size:15px;letter-spacing:.04em;color:var(--link) !important;transition:color .25s}
.hw-links a:hover{color:var(--link-h) !important}
@media(max-width:900px){.hw .ag.ag4{grid-template-columns:1fr;row-gap:44px}.hw .ag-f{aspect-ratio:4/4.4}.hw-d{max-width:none}.hw-links{flex-wrap:wrap;gap:12px 22px;margin-top:50px}}
.hw-n{min-width:0}.hw .ag-t{gap:10px}
/* service split, Frankel product layout */
.sp{display:grid;grid-template-columns:51% 49%;margin-top:0}
.sp-l{position:sticky;top:80px;height:calc(100vh - 80px);display:flex;flex-direction:column;justify-content:flex-end;padding:0 24px 34px 16px;align-self:start}
.sp-info{display:grid;grid-template-columns:1.25fr 1fr .9fr;gap:0 28px}
.sp-a h2{font-size:15px;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:#302721;margin:0 0 22px}
.sp-a p{font-size:16px;line-height:1.5;color:#302721;max-width:34ch}
.sp-a .sp-p{margin-top:18px;color:var(--soft)}
.sp-c h3{font-size:15px;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:#302721;margin:0 0 18px}
.sp-c ul{list-style:none;padding:0;margin:0}
.sp-c li{font-size:15.5px;line-height:1.45;margin:0 0 8px;color:#302721}
.sp-c li a{color:var(--link) !important;transition:color .25s}
.sp-c li a:hover{color:var(--link-h) !important}
.sp-c li a.on{color:#302721 !important}
.sp-links{display:flex;gap:26px;margin-top:44px}
.sp-links a{font-size:15.5px;color:var(--link) !important;transition:color .25s}
.sp-links a:hover{color:var(--link-h) !important}
.sp-cta{display:block;margin-top:26px;font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--link) !important;transition:color .25s}
.sp-cta:hover{color:var(--link-h) !important}
.sp-m{height:calc(100vh - 80px);overflow:hidden}
.sp-m img,.sp-m video{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:900px){
 .sp{grid-template-columns:1fr}
 .sp-l{position:static;height:auto;padding:40px 16px 40px}
 .sp-info{grid-template-columns:1fr 1fr;gap:30px 20px}
 .sp-a{grid-column:1/-1}
 .sp-a p{max-width:none}
 .sp-c li{font-size:14.5px}
 .sp-links{margin-top:34px}
 .sp-m{height:auto;aspect-ratio:4/5}
}
/* service pages: hero bleeds under the header and fills the first screen */
body.ov .hdr{background:transparent;color:#fff;margin-bottom:-50px;transition:background .3s,color .3s}
body.ov .hdr ul,body.ov .hdr a{color:inherit}
body.ov .hdr li>a:hover,body.ov .hdr li.open>a{color:inherit !important;opacity:.7}
body.ov .burger i{background:currentColor}

body.ov.solid .hdr li>a:hover,body.ov .hdr:hover li>a:hover,body.ov .hdr:hover li.open>a{color:var(--link) !important;opacity:1}
body.ov .full{margin-bottom:0;height:calc(100vh - 30px);min-height:520px}
body.ov .full .im{position:absolute;inset:0;aspect-ratio:auto;height:100%}
body.ov .full::before{content:"";position:absolute;left:0;right:0;top:0;height:140px;background:linear-gradient(rgba(0,0,0,.28),transparent);z-index:1;pointer-events:none}
body.ov .full .back{position:absolute;top:62px;left:0;z-index:3;padding:0 40px}
body.ov .full .back a{color:#fff !important}
body.ov .full .back a:hover{opacity:.7}
@media(max-width:900px){body.ov .full{height:calc(100svh - 30px)}body.ov .full .back{top:58px;padding:0 20px}}
body.ov .h-hero{height:calc(100vh - 30px)}
body.ov .h-hero::before{content:"";position:absolute;left:0;right:0;top:0;height:140px;background:linear-gradient(rgba(0,0,0,.28),transparent);z-index:1;pointer-events:none}
@media(max-width:900px){body.ov .h-hero{height:calc(100svh - 30px)}}
/* questions page, Frankel FAQ layout */
.fq{background:var(--bar);padding:70px 0 110px}
.fq-in{width:min(77%,1000px);margin:0 auto;background:var(--bg);padding:60px 42px 70px}
.fq h1{text-align:center;font-size:15px;font-weight:400;letter-spacing:.6em;text-transform:uppercase;padding-left:.6em;margin:0 0 54px;color:#302721}
.fq-g{margin-bottom:58px}
.fq-g h2{font-size:15px;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:#302721;padding-bottom:16px;border-bottom:1px solid #8c8178;margin:0}
.fq details{border-bottom:1px solid #e3ddd3}
.fq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px 0;cursor:pointer;font-size:16px;color:#302721;transition:color .25s}
.fq summary::-webkit-details-marker{display:none}
.fq summary:hover{color:var(--link)}
.fq summary svg{flex:none;width:11px;height:7px;transition:transform .3s}
.fq details[open] summary svg{transform:rotate(180deg)}
.fq details p{font-size:15.5px;line-height:1.6;color:var(--soft);max-width:70ch;margin:-4px 0 22px}
.fq-end{text-align:center;font-size:15.5px;color:var(--soft)}
.fq-end a{color:var(--link) !important}.fq-end a:hover{color:var(--link-h) !important}
@media(max-width:900px){.fq{padding:30px 0 70px}.fq-in{width:auto;margin:0 12px;padding:40px 20px 50px}.fq h1{margin-bottom:40px}.fq summary{font-size:15px;padding:17px 0}.fq-g{margin-bottom:44px}}
.fq summary::after,.fq summary::before{content:none !important;display:none !important}
.fq summary{padding-right:0 !important}
main:has(.fq){background:var(--bar)}
/* questions page, own layout */
main:has(.fq2){background:var(--bg)}
.fq2{display:grid;grid-template-columns:minmax(260px,1fr) 2fr;gap:0 80px;padding:50px 40px 140px;max-width:1360px;margin:0 auto}
.fq2-l{position:sticky;top:110px;align-self:start}
.fq2-l h1{font-family:var(--mark);font-size:46px;font-weight:400;line-height:1.05;color:#302721;margin:0 0 14px}
.fq2-l>p{font-size:16px;color:var(--soft);max-width:26ch;line-height:1.5}
.fq2-l nav{display:flex;flex-direction:column;gap:10px;margin-top:40px}
.fq2-l nav a,.fq2-end a{font-size:15.5px;color:var(--link) !important;transition:color .25s}
.fq2-l nav a:hover,.fq2-end a:hover{color:var(--link-h) !important}
.fq2-l .fq2-end{margin-top:40px;font-size:15.5px}
.fq2-g{margin-bottom:70px;scroll-margin-top:110px}
.fq2-g h2{font-family:var(--mark);font-size:28px;font-weight:400;color:#302721;margin:0 0 14px}
.fq2 summary{list-style:none;display:flex;justify-content:space-between;align-items:baseline;gap:30px;padding:13px 0;cursor:pointer;font-size:16.5px;line-height:1.45;color:#302721;transition:color .25s}
.fq2 summary::-webkit-details-marker{display:none}
.fq2 summary::after,.fq2 summary::before{content:none !important;display:none !important}
.fq2 summary:hover{color:var(--link)}
.fq2 summary i{flex:none;position:relative;width:11px;height:11px;top:1px}
.fq2 summary i::before,.fq2 summary i::after{content:"";position:absolute;left:0;right:0;top:5px;height:1px;background:currentColor;transition:transform .3s}
.fq2 summary i::after{transform:rotate(90deg)}
.fq2 details[open] summary i::after{transform:rotate(0)}
.fq2 details[open] summary{color:var(--link)}
.fq2 details p{font-size:15.5px;line-height:1.65;color:var(--soft);max-width:62ch;margin:0 0 16px}
@media(max-width:900px){
 .fq2{grid-template-columns:1fr;padding:24px 20px 90px}
 .fq2-l{position:static;margin-bottom:46px}
 .fq2-l h1{font-size:38px}
 .fq2-l nav{flex-direction:row;flex-wrap:wrap;gap:8px 18px;margin-top:26px}
 .fq2-l .fq2-end{display:none}
 .fq2-g{margin-bottom:50px}
 .fq2-g h2{font-size:25px}
 .fq2 summary{font-size:15.5px;gap:20px}
}
.fq2 details{border:0 !important;margin:0;padding:0}
.fq2 details{border-bottom:1px solid #e6e0d6 !important}
.fq2 summary{padding:16px 0}
.fq2 details p{margin:-2px 0 20px}
.fq2-l .fq2-end{max-width:28ch;line-height:1.6}
@media(max-width:900px){.fq2-l .fq2-end{display:block;margin-top:26px}}
.fq2-l .fq2-end{max-width:none}
/* questions: panel on warm beige */
main:has(.fq2){background:var(--bar);padding-bottom:110px}
.fq2{background:var(--bg);width:min(88%,1240px);max-width:none;margin:40px auto 0;padding:64px 56px 80px;gap:0 70px}
.fq2-l{top:100px}
@media(max-width:900px){main:has(.fq2){padding-bottom:60px}.fq2{width:auto;margin:22px 12px 0;padding:34px 20px 50px}}
.hs.hs-svc{margin-top:70px}
@media(min-width:901px){.hs-svc .hs-img img,.hs-svc .hs-img video{height:max(420px,calc(100vh - 160px))}.hs-svc .hs-arrow{top:calc(50vh - 116px)}}
.hs.hs-svc{margin-top:40px}
.h-svc-l{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 40px;margin:26px auto 0;max-width:900px;padding:0 20px}
.h-svc-l a{font-size:17px;letter-spacing:.02em;color:var(--link) !important;transition:color .25s}
.h-svc-l a:hover{color:var(--link-h) !important}
@media(max-width:900px){.h-svc-l{gap:8px 22px;margin-top:20px}.h-svc-l a{font-size:15.5px}}
.h-svc-how{text-align:center;margin-top:18px}
.h-svc-how a{font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:#302721 !important;transition:color .25s}
.h-svc-how a:hover{color:var(--link) !important}
.hs.hs-svc{margin-top:22px;padding-top:0}
/* brief pass: prices in captions, larger small text, press names */
.hs-cap{font-size:14px;gap:10px;margin-top:10px}
.hs-cap .hs-pr{color:var(--soft);margin-left:14px}
.mg2 .mh{font-size:13px}
.ag-s{font-size:14px}
.cb .r{font-size:13px}
.hf2-t{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 40px;margin-top:30px}
.hf2 .hf2-t span{font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:#5a4d44}
@media(max-width:900px){
 .mm2 .mh{font-size:12.5px}
 .ag-t{font-size:14.5px}.ag-s{font-size:13.5px}
 .hs-cap{font-size:13.5px;flex-wrap:wrap;row-gap:2px}
 .hs-cap .hs-pr{margin-left:0;flex-basis:100%}
 .hf2 .hf2-t span{font-size:13px}
}
.hs-cap{flex-wrap:wrap;row-gap:2px}.hs-cap .hs-pr{margin-left:0;flex-basis:100%}
.hs-slide{width:min-content}.hs-cap span{white-space:normal}
.hf2 .hf2-k2{margin-top:54px}
.hf2-l2{margin-top:24px}
@media(max-width:900px){.hf2 .hf2-k2{margin-top:40px}}
/* homepage selected work: one story, editorial split */
.sw2{margin-top:120px}
.sw2-label{display:block;background:var(--bar);text-align:center;padding:15px 0;font-size:12.5px;letter-spacing:.5em;padding-left:.5em;text-transform:uppercase;color:#302721 !important;transition:color .25s}
.sw2-label:hover{color:var(--link) !important}
.sw2-split{display:grid;grid-template-columns:1fr 1fr;height:min(88vh,860px)}
.sw2-big,.sw2-in{display:block;overflow:hidden}
.sw2-big img,.sw2-in img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s cubic-bezier(.22,.61,.36,1)}
.sw2-r{background:var(--bar);display:flex;align-items:center;justify-content:center}
.sw2-in{width:58%;aspect-ratio:3/4}
@media(hover:hover){.sw2-big:hover img,.sw2-in:hover img{transform:scale(1.03)}}
.sw2-t{text-align:center;max-width:620px;margin:0 auto;padding:54px 24px 10px}
.sw2-k{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--soft)}
.sw2-t h3{font-family:var(--mark);font-size:34px;font-weight:400;color:#302721;margin:10px 0 14px}
.sw2-t p{font-size:16px;line-height:1.6;color:#302721}
.sw2-l{display:flex;justify-content:center;gap:30px;margin-top:22px}
.sw2-l a,.sw2-more a{color:var(--link) !important;transition:color .25s}
.sw2-l a:hover,.sw2-more a:hover{color:var(--link-h) !important}
.sw2 .sw2-more{margin-top:26px;font-size:15px;color:var(--soft)}
@media(max-width:900px){
 .sw2{margin-top:80px}
 .sw2-split{grid-template-columns:1fr;height:auto}
 .sw2-big{aspect-ratio:4/5}
 .sw2-r{padding:44px 0}
 .sw2-in{width:62%}
 .sw2-t{padding:40px 20px 0}
 .sw2-t h3{font-size:28px}
 .sw2-l{flex-wrap:wrap;gap:10px 24px}
}
/* homepage Amneet feature: full photo with her words inside */
.hq3{position:relative;height:calc(100vh - 50px);min-height:560px;margin-top:120px;overflow:hidden}
.hq3 .im{position:absolute;inset:0;aspect-ratio:auto;height:100%}
.hq3 .im img{width:100%;height:100%;object-fit:cover}
.hq3::after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,0) 35%,rgba(0,0,0,.55));pointer-events:none}
.hq3-t{position:absolute;left:0;right:0;bottom:8%;z-index:2;text-align:center;color:#fff;padding:0 24px}
.hq3-k{font-size:16px;letter-spacing:.3em;padding-left:.3em;text-transform:uppercase}
.hq3-s{font-size:16px;margin-top:6px;opacity:.9}
.hq3 blockquote{font-family:var(--mark);font-size:30px;line-height:1.3;max-width:760px;margin:24px auto 0}
.hq3-l{display:inline-block;margin-top:24px;font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:#fff !important;transition:opacity .25s}
.hq3-l:hover{opacity:.7}
@media(max-width:900px){
 .hq3{height:calc(100svh - 50px);margin-top:80px}
 .hq3 blockquote{font-size:22px}
 .hq3-t{bottom:6%}
 .hq3-k,.hq3-s{font-size:14px}
}
@media(min-width:901px){
 .hq3 .im img{object-position:28% 30% !important}
 .hq3::after{background:linear-gradient(to left,rgba(0,0,0,.62),rgba(0,0,0,.25) 45%,rgba(0,0,0,0) 65%)}
 .hq3-t{left:auto;right:6%;bottom:auto;top:50%;transform:translateY(-50%);width:min(420px,36%);text-align:left;padding:0}
 .hq3-k{padding-left:0}
 .hq3 blockquote{font-size:27px;margin:22px 0 0}
}
/* header clears over any photo */
body.ov .hdr{background:var(--bg);color:var(--ink)}
.hdr{transition:background .3s,color .3s}
html body .hdr.clear{background:transparent;color:#fff;text-shadow:0 0 14px rgba(0,0,0,.25)}
html body .hdr.clear ul,html body .hdr.clear a{color:#fff !important}
html body .hdr.clear .burger i{background:#fff}
html body .hdr.clear li>a:hover{opacity:.7}



html body .hdr.clear{background:transparent;text-shadow:0 0 8px rgba(0,0,0,.18)}

@media(hover:hover){html body .hdr.clear:hover{background:var(--bg);color:var(--ink);text-shadow:none}html body .hdr.clear:hover ul,html body .hdr.clear:hover a{color:var(--ink) !important}html body .hdr.clear:hover .burger i{background:#000}}

html body.m-open .hdr.clear{background:var(--bg) !important;color:var(--ink);text-shadow:none}html body.m-open .hdr.clear a{color:var(--ink) !important}html body.m-open .hdr.clear .burger i{background:#000}

/* header: never a background bar */
html body .hdr,html body.ov .hdr{background:transparent !important;margin-bottom:-50px}
html body .hdr .on-photo,html body .hdr .on-photo a{color:#fff !important;text-shadow:0 0 8px rgba(0,0,0,.18)}
html body .hdr .burger.on-photo i{background:#fff}
html body.m-open .hdr{background:var(--bg) !important}
@media(hover:hover){html body .hdr:has(li.open){background:var(--bg) !important}html body .hdr:has(li.open) .on-photo,html body .hdr:has(li.open) .on-photo a{color:var(--ink) !important;text-shadow:none}}

.hdr .logo .lc{transition:color .25s}.hdr .logo .lc.on-photo{color:#fff}
html body:not(.ov) main{padding-top:50px}
/* split section fills the whole screen so the photo above never peeks behind the header */
@media(min-width:901px){
 .sp-m{height:100vh}
 .sp-l{top:0;height:100vh;padding-top:70px}
 .sp-r{min-height:100vh}
}
/* when all slides fit on screen, stretch them to fill the full width evenly */
.hs-fit .hs-slide{flex:1 1 0;width:auto;min-width:0}
.hs-fit .hs-img img:not(.hs-alt),.hs-fit .hs-img video{width:100%;object-fit:cover}
.hs-fit .hs-arrow{display:none}
/* Back always sits clearly below the menu */
html body:not(.ov) main{padding-top:62px}
body.ov .full .back{top:78px}
@media(max-width:900px){html body:not(.ov) main{padding-top:58px}body.ov .full .back{top:70px}}
.back,.pd-back{transition:opacity .2s}
/* Back stays pinned under the menu while scrolling; on plain pages it carries the page colour so text slides under it cleanly */
html body .back{position:fixed;top:60px;left:28px;z-index:45;padding:5px 12px;background:var(--bg);opacity:1 !important;pointer-events:auto !important;transition:background .25s,color .25s}
html body .back a{color:var(--ink)}
html body .back.on-photo{background:transparent}
html body .back.on-photo a{color:#fff !important;text-shadow:0 0 8px rgba(0,0,0,.18)}
body.ov .full .back{position:fixed;top:60px;left:28px;padding:5px 12px}
@media(max-width:900px){html body .back,body.ov .full .back{top:56px;left:8px}}
html body:not(.ov) main{padding-top:96px}
@media(max-width:900px){html body:not(.ov) main{padding-top:88px}}
body.m-open .back{display:none}
html body.ov .full .back:not(.on-photo) a{color:var(--ink) !important}
html body .back{transition:color .25s}
html body .back,html body .back.on-photo,body.ov .full .back{background:transparent !important;border:0 !important;box-shadow:none !important;outline:0}
@media(max-width:900px){html body .back,html body .pd-back,body.ov .full .back{display:none !important}html body:not(.ov) main{padding-top:64px}}
@media(max-width:900px){html body .hdr.hdr-solid{background:var(--bg) !important}html body .hdr.hdr-solid a,html body .hdr.hdr-solid .logo .lc{color:var(--ink) !important;text-shadow:none}html body .hdr.hdr-solid .burger i{background:#000}}
/* services slider: all four side by side, equal width, equal gaps */
@media(min-width:901px){
 .hs[aria-label="Services"] .hs-slide{flex:1 1 0;width:auto;min-width:0}
 .hs[aria-label="Services"] .hs-img img:not(.hs-alt),.hs[aria-label="Services"] .hs-img video:not(.hs-alt){width:100%;object-fit:cover}
 .hs[aria-label="Services"] .hs-arrow{display:none}
 .hs[aria-label="Services"] .hs-track{cursor:default}
}
.h-svc-t{color:inherit !important;transition:color .25s}.h-svc-t:hover{color:var(--link) !important}
.hq3{margin-top:56px}.hs.hs-svc{padding-bottom:0}@media(max-width:900px){.hq3{margin-top:44px}}
.hq3{height:100vh;min-height:560px}@media(max-width:900px){.hq3{height:100svh}}
@media(min-width:901px){.hs-svc .hs-img img,.hs-svc .hs-img video{height:max(300px,calc(100vh - 360px)) !important}.h-head-svc{padding-top:70px}.hs-svc .hs-link{padding-top:16px}}
/* menu dropdown: quiet full-width panel, no photos */
.mega.mg3{left:0;right:0;width:auto;height:auto;bottom:auto;padding:46px 40px 54px;display:flex;justify-content:center;background:var(--bg)}
.mg3 .cols{display:flex;gap:110px;justify-content:center}
.mg3 .col{display:flex;flex-direction:column;gap:12px;min-width:200px}
.mg3 .mh,.mg3 a.mh{font-family:inherit;font-size:12px !important;letter-spacing:.32em;text-transform:uppercase;color:var(--soft) !important;margin-bottom:14px}
.mg3 a.mh:hover{color:var(--link) !important}
.mg3 .col a:not(.mh){font-family:var(--mark);font-size:23px;font-weight:400;letter-spacing:.01em;line-height:1.25;color:#302721 !important;opacity:1;transition:color .25s}
.mg3 .col a:not(.mh):hover{color:var(--link) !important;opacity:1}
.dim.on ~ main .back{opacity:0 !important;pointer-events:none !important}
/* Amneet feature: framed, not full screen */
@media(min-width:901px){
 .hq3{height:min(72vh,720px);min-height:460px;margin:56px 40px 0}
 .hq3 blockquote{font-size:24px}
}
@media(max-width:900px){.hq3{height:auto;aspect-ratio:4/5;min-height:0;margin:44px 16px 0}.hq3 blockquote{font-size:19px}}
/* menu dropdown: minimal */
.mega.mg3{padding:22px 40px 26px;justify-content:flex-start}
.mg3 .cols{gap:64px;justify-content:flex-start}
.mg3 .col{gap:7px;min-width:0}
.mg3 .mh,.mg3 a.mh{font-size:10.5px !important;letter-spacing:.24em;margin-bottom:6px}
.mg3 .col a:not(.mh){font-family:inherit;font-size:14.5px;letter-spacing:.02em;line-height:1.4}
.mega.mg3{right:auto;width:auto;padding-right:56px}
@media(hover:hover){html body .hdr:has(li.open),html body .hdr.clear:hover,body.ov .hdr:hover{background:transparent !important}
 html body .hdr:has(li.open) .on-photo,html body .hdr:has(li.open) .on-photo a,html body .hdr.clear:hover .on-photo,html body .hdr.clear:hover .on-photo a{color:#fff !important}}
html body .hdr li.open>a.on-photo,html body .hdr li>a.on-photo:hover{color:#fff !important;opacity:.75}
html body.ov .hdr.hdr:hover li.open>a.on-photo,html body .hdr.hdr:hover li>a.on-photo:hover,html body .hdr.hdr li.open>a.on-photo{color:#fff !important;opacity:.75}
.dim,.dim.on{background:transparent !important;backdrop-filter:none !important}
/* menu: full-width blurred strip, one row per group */
.mega.mg3{left:0;right:0;width:auto;padding:20px 40px 22px;background:rgba(248,248,244,.68) !important;-webkit-backdrop-filter:blur(18px) saturate(1.1);backdrop-filter:blur(18px) saturate(1.1)}
.mg3 .cols{flex-direction:column;gap:12px;width:100%}
.mg3 .col{flex-direction:row;align-items:baseline;flex-wrap:wrap;gap:6px 30px}
.mg3 .mh,.mg3 a.mh{min-width:170px;margin:0 !important}
.mg3 .mh::after{content:":"}
/* homepage services heading: editorial row */
.hsv-head{display:flex;justify-content:space-between;align-items:baseline;gap:30px;padding:96px 16px 0;max-width:none}
.hsv-t{font-family:var(--mark);font-size:34px;font-weight:400;letter-spacing:.01em;color:#302721 !important;transition:color .25s}
.hsv-t:hover{color:var(--link) !important}
.hsv-l{display:flex;gap:30px;flex-wrap:wrap}
.hsv-l a{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--soft) !important;transition:color .25s}
.hsv-l a:hover{color:var(--link) !important}
.hsv-head + .hs.hs-svc{margin-top:22px}
@media(max-width:900px){.hsv-head{flex-direction:column;align-items:flex-start;gap:12px;padding:64px 16px 0}.hsv-t{font-size:28px}.hsv-l{gap:8px 18px}.hsv-l a{font-size:11px}}
@media(min-width:901px){.hq3{height:min(86vh,880px)}.hq3 .im img{object-position:28% 45% !important}}
@media(min-width:901px){.hq3 .im img{object-position:28% 36% !important}}
@media(min-width:901px){.hq3{margin-left:0;margin-right:0}}@media(max-width:900px){.hq3{margin-left:0;margin-right:0}}
/* press: quiet editorial rows matching the services heading */
.hf3{padding:72px 16px 0;display:flex;flex-direction:column;gap:28px}
.hf3-r{display:flex;align-items:center;gap:48px}
.hf3-t{font-family:var(--mark);font-size:26px;font-weight:400;color:#302721;min-width:270px;margin:0}
.hf3-l{display:flex;align-items:center;flex-wrap:wrap;gap:20px 56px;opacity:.72}
.hf3-l img{width:auto;display:block}
.hf3 + .hs{margin-top:72px}
@media(max-width:900px){.hf3{padding:56px 16px 0;gap:30px}.hf3-r{flex-direction:column;align-items:flex-start;gap:16px}.hf3-t{font-size:22px;min-width:0}.hf3-l{gap:18px 30px}.hf3-l img{transform:scale(.85);transform-origin:left center}.hf3 + .hs{margin-top:56px}}
/* press v4: compact centered band */
.hf3{padding:64px 6vw 0;gap:34px;align-items:stretch}
.hf3-r{flex-direction:column;align-items:center;gap:20px}
.hf3-t{font-family:inherit;font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--soft);min-width:0;padding-left:.32em}
.hf3-r:first-child .hf3-l{width:100%;justify-content:space-between;max-width:1000px}
.hf3-l{opacity:.8;gap:20px 64px;justify-content:center}
.hf3 + .hs{margin-top:64px}
@media(max-width:900px){.hf3{padding:52px 20px 0}.hf3-r{align-items:center}.hf3-r:first-child .hf3-l{justify-content:center;gap:18px 28px}.hf3-l img{transform:scale(.85);transform-origin:center}}
/* press: continuous moving row */
.hf4{padding:64px 0 0}
.hf4-t{text-align:center;font-size:11px;letter-spacing:.32em;padding-left:.32em;text-transform:uppercase;color:var(--soft);margin:0 0 30px}
.hf4-m{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.hf4-tr{display:flex;width:max-content;animation:hf4 38s linear infinite}
.hf4-g{display:flex;align-items:center;gap:110px;padding-right:110px}
.hf4-g img{width:auto;display:block;opacity:.82}
.hf4-m:hover .hf4-tr{animation-play-state:paused}
@keyframes hf4{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.hf4-tr{animation:none}}
.hf4 + .hs{margin-top:64px}
@media(max-width:900px){.hf4{padding-top:52px}.hf4-g{gap:60px;padding-right:60px}.hf4-g img{transform:scale(.8)}.hf4-tr{animation-duration:28s}.hf4 + .hs{margin-top:52px}}
@media(max-width:900px){.hsv-l{display:none}.hsv-head{gap:0}}
.h-head-svc + .hs.hs-svc{margin-top:40px}
.hq3 .im img{object-position:28% 36% !important}
@media(max-width:1100px) and (min-width:901px){.hq3{height:auto;aspect-ratio:16/10}.hq3-t{width:min(380px,42%)}}
@media(max-width:900px){.hq3 .im img{object-position:30% 30% !important}}
/* About v2 */
html body.ov .ab2-hero{height:100vh;min-height:560px}
.ab2-duo{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr}
html body.ov .ab2-hero .ab2-duo .im{position:relative;inset:auto;height:100%;aspect-ratio:auto}
.ab2-duo .im img{width:100%;height:100%;object-fit:cover}
.ab2-hero .cap h1{font-family:var(--mark);font-size:46px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;line-height:1.1}
.ab2-hero .cap p{font-size:15px;letter-spacing:.24em;text-transform:uppercase;padding-left:.24em}
.ab2-head{padding-top:110px}
.ab2-body{max-width:640px;margin:34px auto 0;padding:0 24px}
.ab2-body p{color:#231E1A;font-size:19px;line-height:1.65;margin:0 0 18px;max-width:none}
.ab2-quote{padding:90px 24px 110px;text-align:center}
.ab2-quote blockquote{font-family:var(--mark);font-size:34px;line-height:1.35;color:#6B5252;max-width:860px;margin:0 auto}
.ab2-sp{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
.ab2-m{margin:0;height:100vh;overflow:hidden}
.ab2-m .im{height:100%;aspect-ratio:auto}
.ab2-m img,.ab2-m video{width:100%;height:100%;object-fit:cover;display:block}
.ab2-t{display:flex;flex-direction:column;justify-content:center;padding:60px clamp(32px,7vw,110px)}
.ab2-t h2{font-family:var(--mark);font-size:32px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:#6B5252;margin:0 0 26px;line-height:1.2}
.ab2-t p{font-size:18px;line-height:1.65;margin:0 0 16px;color:#231E1A}
.ab2-l{margin-top:16px;font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:#6B5252 !important;transition:opacity .25s}
.ab2-l:hover{opacity:.65}
@media(max-width:900px){
 html body.ov .ab2-hero{height:100svh}
 .ab2-duo{grid-template-columns:1fr}
 .ab2-duo .im:nth-child(2){display:none}
 .ab2-hero .cap h1{font-size:30px}
 .ab2-hero .cap p{font-size:12px}
 .ab2-head{padding-top:70px}
 .ab2-body p{font-size:17px}
 .ab2-quote{padding:56px 22px 70px}
 .ab2-quote blockquote{font-size:24px}
 .ab2-sp{grid-template-columns:1fr}
 .ab2-flip .ab2-m{order:0}
 .ab2-m{height:auto;aspect-ratio:4/5}
 .ab2-t{padding:44px 22px 64px}
 .ab2-t h2{font-size:24px}
 .ab2-t p{font-size:17px}
}
@media(max-width:900px){.ab2-sp .ab2-m{order:-1}.ab2-hero .cap p{font-size:11px;letter-spacing:.14em;padding:0 16px}.ab2-hero .cap h1{letter-spacing:.08em}}
/* Press v2 */
.pr2-head{padding-top:110px}
.pr2-h2{padding-top:120px}
.pr2-l{list-style:none;margin:56px auto 0;padding:0 40px;max-width:1100px;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:56px 96px}
.pr2-l img{width:auto;max-width:100%;display:block;opacity:.85}
.pr2-end{text-align:center;padding:130px 24px 120px}
.pr2-end p{font-size:18px;color:#231E1A;margin:0}
.pr2-end p a{color:#6B5252}
.pr2-end div{margin-top:26px;display:flex;gap:40px;justify-content:center}
.pr2-end div a{font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:#6B5252 !important;transition:opacity .25s}
.pr2-end div a:hover{opacity:.65}
@media(max-width:900px){
 .pr2-head{padding-top:70px}.pr2-h2{padding-top:80px}
 .pr2-l{gap:40px 48px;padding:0 24px;margin-top:40px}
 .pr2-l img{transform:scale(.72)}
 .pr2-l li{margin:-6px -10px}
 .pr2-end{padding:90px 22px 80px}.pr2-end p{font-size:16px}
}
/* About v3: collage + two-column story */
.ab3{padding:40px 40px 120px;text-align:center}
.ab3-col{display:flex;justify-content:center;align-items:flex-start;gap:14px;margin:0 auto}
.ab3-col figure{margin:0;overflow:hidden}
.ab3-col .im{aspect-ratio:auto;height:100%}
.ab3-col img,.ab3-col video{width:100%;height:100%;object-fit:cover;display:block}
.ab3-col .c1{width:170px;height:212px;margin-top:96px}
.ab3-col .c2{width:250px;height:312px}
.ab3-col .c3{width:190px;height:190px;margin-top:40px}
.ab3-col .c4{width:170px;height:212px;margin-top:150px}
.ab3-n{font-family:var(--mark);font-weight:400;font-size:19px;letter-spacing:.62em;padding-left:.62em;text-transform:uppercase;color:#302721;margin:84px 0 0;line-height:1.3}
.ab3-r{font-size:13px;letter-spacing:.3em;padding-left:.3em;text-transform:uppercase;color:var(--soft);margin:16px 0 0}
.ab3-txt{column-count:2;column-gap:72px;max-width:1040px;margin:72px auto 0;text-align:left}
.ab3-txt p{font-size:17px;line-height:1.6;color:#231E1A;margin:0 0 22px;break-inside:avoid}
.ab3-l{display:inline-block;margin-top:40px;font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:#6B5252 !important;transition:opacity .25s}
.ab3-l:hover{opacity:.65}
@media(max-width:900px){
 .ab3{padding:24px 20px 80px}
 .ab3-col{gap:8px}
 .ab3-col .c1{width:20vw;height:25vw;margin-top:11vw}
 .ab3-col .c2{width:29vw;height:36vw}
 .ab3-col .c3{width:22vw;height:22vw;margin-top:5vw}
 .ab3-col .c4{width:20vw;height:25vw;margin-top:17vw}
 .ab3-n{font-size:15px;letter-spacing:.4em;padding-left:.4em;margin-top:52px}
 .ab3-r{font-size:10px;letter-spacing:.2em;padding-left:.2em}
 .ab3-txt{column-count:1;margin-top:44px}
 .ab3-txt p{font-size:16px}
}
.ab3-col .c2{width:400px;height:500px}
@media(max-width:900px){.ab3-col .c2{width:72vw;height:90vw}}
.ab3-n{margin-top:40px}.ab3-r{margin-top:10px}.ab3-txt{margin-top:48px}
@media(max-width:900px){.ab3-n{margin-top:30px}.ab3-txt{margin-top:32px}}
/* Press v3, matches About */
.pr3-l{list-style:none;margin:40px auto 0;padding:0;max-width:960px;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:36px 72px}
.pr3-l img{width:auto;display:block;opacity:.8}
.pr3-k{margin-top:72px !important}
.pr3-e{margin:72px 0 0;font-size:16px;color:#231E1A}
.pr3-e a{color:#6B5252}
@media(max-width:900px){.pr3-l{gap:28px 40px;margin-top:30px}.pr3-l img{transform:scale(.8)}.pr3-k{margin-top:52px !important}.pr3-e{margin-top:52px;font-size:15px}}
.pr3-e{line-height:1.8}.pr3-e a{font-style:italic;font-size:17px}
h1.pr3-t{font-weight:400;margin-top:44px;line-height:1.4}
@media(max-width:900px){h1.pr3-t{margin-top:32px}}
/* Selected Work v4: one at a time */
.sw4{text-align:center;padding:110px 24px 20px}
.sw4-k{margin:0 0 34px !important}
.sw4-f{position:relative;width:440px;max-width:100%;aspect-ratio:4/5;margin:0 auto}
.sw4-s{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .7s ease,visibility .7s}
.sw4-s.on{opacity:1;visibility:visible}
.sw4-s img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.sw4-alt{opacity:0;transition:opacity .5s}
@media(hover:hover){.sw4-s:hover .sw4-alt{opacity:1}}
.sw4-c{display:flex;align-items:center;justify-content:center;gap:28px;margin-top:30px}
.sw4-t{font-family:var(--mark);font-size:17px;letter-spacing:.42em;padding-left:.42em;text-transform:uppercase;color:#302721;min-width:280px}
.sw4-c button{background:none;border:0;padding:0 6px;font-size:28px;line-height:1;color:#302721;cursor:pointer;font-family:var(--mark);transition:opacity .25s}
.sw4-c button:hover{opacity:.5}
.sw4-i{margin:10px 0 0;font-size:13px;letter-spacing:.2em;color:var(--soft)}
.sw4-l{display:inline-block;margin-top:26px;font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:#6B5252 !important;transition:opacity .25s}
.sw4-l:hover{opacity:.65}
@media(max-width:900px){.sw4{padding:70px 20px 10px}.sw4-f{width:78vw}.sw4-t{font-size:13px;letter-spacing:.26em;padding-left:.26em;min-width:0}.sw4-c{gap:16px}}
.sw4-c button svg{width:10px;height:20px;display:block;fill:none;stroke:#302721;stroke-width:1.2}
.sw4-p svg{transform:scaleX(-1)}
/* Inquire v2 */
.iq{padding-top:56px}
.iq .ab3-n{margin-top:0}
.iq-note{max-width:640px;margin:46px auto 0;padding:34px 20px 0}
.iq-note p:not(.ab3-r){font-size:17px;line-height:1.8;color:#231E1A;margin:14px 0 0}
.iq-k{margin-top:60px !important}
.iq-t{font-size:17px;line-height:1.8;color:#231E1A;margin:16px auto 0;max-width:640px}
.iq-t a{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:.5px;color:#231E1A}
.iq-ch{display:flex;justify-content:center;gap:56px;margin-top:40px}
.iq-ch a{font-size:14px;letter-spacing:.18em;text-transform:uppercase;color:#6B5252 !important;transition:opacity .25s}
.iq-ch a:hover{opacity:.6}
.iq-f{max-width:640px;margin:64px auto 0;text-align:left}
.iq-f label{display:block;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--soft);margin-bottom:26px}
.iq-f input,.iq-f select,.iq-f textarea{border-bottom-color:rgba(48,39,33,.25);font-size:17px;letter-spacing:0;text-transform:none;color:#231E1A}
.iq-f .row2{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.iq-f .send{display:block;margin:20px auto 0;background:none;border:0;padding:0;font:inherit;font-size:14px;letter-spacing:.18em;text-transform:uppercase;color:#6B5252;cursor:pointer}
.iq-f .send:hover{opacity:.6}
.iq-f .thanks{text-align:center}
@media(max-width:900px){.iq{padding-top:30px}.iq-ch{flex-direction:column;gap:18px}.iq-f .row2{grid-template-columns:1fr;gap:0}.iq-note p:not(.ab3-r),.iq-t{font-size:16px}}
.iq-note{margin-top:30px;padding-top:0}
.iq-note p:not(.ab3-r){margin-top:10px;line-height:1.65}
.iq-k{margin-top:36px !important}
.iq-t{margin-top:10px;line-height:1.65}
.iq-ch{margin-top:26px}
.iq-f{margin-top:44px}
@media(max-width:900px){.iq{padding-top:20px}.iq-note{margin-top:22px}.iq-k{margin-top:28px !important}.iq-ch{margin-top:20px;gap:12px}.iq-f{margin-top:34px}.iq-f label{margin-bottom:20px}}
.ab3-txt p{break-inside:auto}
/* Questions page: solid header strip so the questions never run under the header text */
html body.pg-q .hdr{background:#F3EFE8 !important;box-shadow:0 1px 0 rgba(48,39,33,.12)}
html body.pg-q .hdr *{color:#302721}
/* iPhone menu v3: centred accordion */
@media(max-width:900px){
 .mm3{display:flex;flex-direction:column;justify-content:center;align-items:stretch;overflow-y:auto;padding:30px 24px 40px;text-align:center}
 .mq{padding:0}
 .mq-h{display:block;width:100%;background:none;border:0;padding:16px 0;font-family:var(--mark);font-size:19px;letter-spacing:.32em;padding-left:.32em;text-transform:uppercase;color:#302721;cursor:pointer}
 .mq-l{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
 .mq-l>div{overflow:hidden;display:flex;flex-direction:column;gap:12px}
 .mq.on .mq-l{grid-template-rows:1fr}
 .mq.on .mq-l>div{padding:2px 0 18px}
 .mq-l a{font-size:16px;color:#6B5252}
 .mq-end{display:flex;justify-content:center;gap:34px;margin-top:34px}
 .mq-end a{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--soft)}
}
html body.pg-q .back{position:fixed;left:28px;padding:4px 12px 4px 0;background:var(--bg) !important;z-index:40}
html body.pg-q main{padding-top:50px !important}
@media(max-width:900px){html body.pg-q main{padding-top:84px !important}html body.pg-q .iq{padding-top:14px}html body.pg-q .ab3{padding-top:14px}}
/* concept password gate */
.gate{display:none}
html.locked,html.locked body{overflow:hidden !important}
html.locked body>*:not(.gate){visibility:hidden !important}
html.locked .gate{display:flex;position:fixed;inset:0;z-index:9999;background:#F8F7F3;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px 24px;overflow-y:auto}
.gate-logo{font-family:var(--mark);font-size:22px;letter-spacing:.34em;padding-left:.34em;text-transform:uppercase;color:#302721;margin:0}
.gate-k{font-size:12px;letter-spacing:.3em;padding-left:.3em;text-transform:uppercase;color:var(--soft);margin:46px 0 0}
.gate-t{max-width:520px;font-size:16px;line-height:1.75;color:#231E1A;margin:16px 0 0}
.gate-f{margin-top:44px;width:min(320px,100%)}
.gate-f label{display:block;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--soft)}
.gate-f input{text-align:center;font-size:17px;border-bottom:1px solid rgba(48,39,33,.25);margin-top:6px;color:#231E1A}
.gate-f button{margin-top:26px;background:none;border:0;padding:0;font:inherit;font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:#6B5252;cursor:pointer;transition:opacity .25s}
.gate-f button:hover{opacity:.6}
.gate-e{min-height:20px;margin:14px 0 0;font-size:14px;color:#6B5252}
.gate-by{margin:40px 0 0;font-size:12px;letter-spacing:.08em;color:var(--soft)}
@media(max-width:900px){.gate-logo{font-size:16px;letter-spacing:.26em}.gate-t{font-size:15px}.gate-k{margin-top:36px}}
