/* =====================================================================
   restructure 2026-10-18: top menu · Who We Are · Contact · What We Do · Products
   Large, dark type (cream on the brown variant via variables).
   ===================================================================== */
/* ---- top menu ---- */
.topnav{display:none}
@media(min-width:1100px){
 .topnav{display:flex;align-items:center;gap:clamp(18px,2vw,30px);margin:0 auto 0 40px}
 .topnav a{font-family:"Inter Tight",sans-serif;font-size:17px;font-weight:500;color:var(--ink);padding:8px 0;border-bottom:2px solid transparent;transition:color .2s,border-color .2s;white-space:nowrap}
 .topnav a:hover{color:var(--m)}
 .topnav a.on{border-bottom-color:var(--m)}
}
.hdr{gap:16px}
.cta{font-size:16px;font-weight:500;padding:10px 18px}
#menuBtn em{font-size:14px;font-weight:500}
@media(max-width:800px){#menuBtn{width:66px;height:40px;padding:0;min-width:0;justify-content:flex-end}#menuBtn em{display:inline;font-size:14px}.cta{font-size:15px;padding:9px 14px}.hdr-l .mono{display:none}}
@media(max-width:380px){.hdr-l .hdr-wm{font-size:16px}.cta{font-size:14px;padding:8px 11px}}
/* overlay menu: active page + phone sizing */
#menu li a.on{color:var(--m)}
#menu li a.on i::after{content:" ●";font-size:.5em;vertical-align:middle}
#menu li a i{font-size:15px}
@media(max-width:800px){#menu{justify-content:flex-start;padding:96px 24px 40px;overflow:auto}#menu li a{font-size:clamp(32px,9vw,44px);padding:8px 0;line-height:1.15}}
/* ---- home: Who We Are ---- */
.who-g{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:6vw;align-items:start}
.who-t p{font-size:clamp(19px,1.7vw,22px);line-height:1.6;color:var(--ink);max-width:54ch;margin:0 0 22px}
.who-t p:first-child{font-size:clamp(23px,2.3vw,30px);line-height:1.4;font-weight:400}
.who-links{list-style:none;margin:6px 0 0;padding:0;border-top:1px solid var(--ink)}
.who-links li{border-bottom:1px solid var(--hair)}
.who-links a{display:block;padding:18px 0;font-size:20px;font-weight:500;color:var(--ink);transition:color .2s,padding .3s}
.who-links a:hover{color:var(--m);padding-left:8px}
@media(max-width:800px){.who-g{grid-template-columns:1fr;gap:34px}}
/* ---- home: Enquiries + Contact ---- */
.comm-side{margin-top:6px}
.ct-dl{display:grid;grid-template-columns:150px minmax(0,1fr);gap:0;margin:0;max-width:900px;border-top:1px solid var(--ink)}
.ct-dl dt,.ct-dl dd{padding:18px 0;border-bottom:1px solid var(--hair);margin:0}
.ct-dl dt{font-family:"JetBrains Mono",monospace;font-size:15px;font-weight:500;letter-spacing:.04em;color:var(--dim);padding-top:23px}
.ct-dl dd{font-size:clamp(19px,1.8vw,23px);color:var(--ink);overflow-wrap:anywhere}
.ct-dl a{border-bottom:1px solid currentColor;transition:color .2s}.ct-dl a:hover{color:var(--m)}
.ct-soc{display:inline-flex;align-items:center;gap:10px;border-bottom:0!important}.ct-soc .si{width:24px;height:24px}
.ct-cta{margin:40px 0 0}
@media(max-width:600px){.ct-dl{grid-template-columns:1fr}.ct-dl dt{border-bottom:0;padding:16px 0 0}.ct-dl dd{padding-top:4px}}
/* tighter rhythm on the short home page (no long gaps) */
.who,#enquiries,#contact{padding-top:clamp(64px,7vw,104px);padding-bottom:clamp(56px,6vw,90px)}
/* ---- inner pages ---- */
.wpage,.prpage{padding-top:70px}
.w-lead{font-size:clamp(21px,2.2vw,26px);line-height:1.5;color:var(--ink);max-width:44ch;margin:0 0 44px}
.svc{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;border-top:1px solid var(--ink)}
.svc li{padding-top:20px}
.svc .mono{color:var(--m);font-size:14px;font-weight:500}
.svc h3{font-family:Cinzel,serif;font-weight:500;font-size:clamp(26px,2.6vw,36px);line-height:1.1;margin:10px 0 12px}
.svc p{font-size:19px;line-height:1.55;color:var(--ink);max-width:36ch}
.svc a{border-bottom:1px solid currentColor;white-space:nowrap}.svc a:hover{color:var(--m)}
.w-cta{margin:48px 0 0}
.wpage .about-g p.lead{color:var(--ink)}
.wpage .atl .st p{color:var(--ink);font-size:18px}
.wpage .sec+.sec{padding-top:clamp(40px,5vw,80px)}
@media(max-width:900px){.svc{grid-template-columns:1fr;gap:8px}.svc li{border-bottom:1px solid var(--hair);padding:18px 0 22px}}
.prpage .sec-h{flex-wrap:wrap}
.prpage .filters button{font-size:15px;font-weight:500;padding:6px 2px}
.prpage .tile h4{font-size:17px}.prpage .tile .sub{font-size:14px}
.pj-back{display:inline-block;font-size:18px;font-weight:500;margin:0 0 26px;border-bottom:1px solid currentColor}.pj-back:hover{color:var(--m)}
/* ---- inner pages on phones: the corner logo button covered links (e.g. "Watch on Instagram").
   The header already has "Make an enquiry" and the menu, so the corner button is hidden there. ---- */
@media(max-width:800px){main.fpage~#fab,main.pj-page~#fab{display:none!important}}
#giant{transform:none!important}
