/* ══════════════════════════════════════════════════════════
   COLAB Crea+ive Studio — shared site styles (v2)
   One stylesheet for the homepage and every sub-page.
   ══════════════════════════════════════════════════════════ */
:root{
  --paper:#EFE9DC; --panel:#F5F0E5; --panel2:#F8F4EC; --ink:#141310; --mut:#7d786c; --soft:#524f46; --line:#ddd5c5;
  --accent:#FF5A1F; --g:'Hanken Grotesk',system-ui,sans-serif;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--paper);color:var(--ink);font-family:var(--g);font-weight:400;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
a{color:inherit;text-decoration:none;}
::selection{background:var(--accent);color:#fff;}
.wrap{max-width:1180px;margin:0 auto;padding:0 clamp(22px,5vw,56px);}
/* the + device — slightly larger + orange everywhere */
.pl{color:var(--accent);font-weight:800;font-size:1.12em;line-height:0;}
.dot{color:var(--accent);}            /* orange full stop */
h2{font-weight:800;letter-spacing:-.035em;line-height:1.03;}
section{padding:clamp(58px,8vw,104px) 0;}

/* ── LOCKUP (COLAB over CREA+IVE STUDIO) ─────────────────── */
.lock{display:inline-block;}
.lock .nm{display:block;line-height:.78;}
.lock .nm span{display:inline-block;font-weight:800;font-size:var(--sz,26px);letter-spacing:-.05em;color:var(--ink);}
.lock .sub{display:block;margin-top:calc(var(--sz,26px)*.04);overflow:hidden;}   /* tighter gap */
.lock .sub span{display:inline-block;white-space:nowrap;font-weight:700;font-size:calc(var(--sz,26px)*.205);letter-spacing:.26em;color:var(--soft);}
.lock .sub span .pl{color:var(--accent);font-weight:800;font-size:1em;}
.lock.onD .nm span{color:var(--paper);} .lock.onD .sub span{color:#c7c0b1;}

/* ── NAV ─────────────────────────────────────────────────── */
nav{position:sticky;top:0;z-index:60;background:rgba(239,233,220,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:74px;}
.nav-links{display:flex;gap:26px;align-items:center;font-size:15px;font-weight:600;}
.nav-links a{color:var(--soft);}
.nav-links a:hover{color:var(--ink);}
.lang{font-size:13px;color:var(--mut);cursor:pointer;}
.lang b{color:var(--ink);}
.nav-cta{background:var(--ink);color:var(--paper)!important;border-radius:40px;padding:10px 20px;font-size:14px;font-weight:700;}
.nav-cta:hover{background:var(--accent);}
.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px;}
.burger span{width:24px;height:2px;background:var(--ink);}
#mob{display:none;border-bottom:1px solid var(--line);background:var(--paper);}
#mob a{display:block;padding:14px 0;font-weight:600;border-top:1px solid var(--line);}
@media(max-width:940px){.nav-links a:not(.nav-cta),.nav-links .lang{display:none;}.burger{display:flex;}}

/* ── HERO ────────────────────────────────────────────────── */
header.hero{padding:clamp(50px,8vw,96px) 0 clamp(36px,5vw,60px);}
.h-kick{font-size:15px;font-weight:600;color:var(--soft);margin-bottom:26px;}
h1{font-size:clamp(44px,8vw,104px);font-weight:800;letter-spacing:-.045em;line-height:.96;max-width:15ch;}
.h-lead{font-size:20px;color:var(--soft);max-width:600px;margin:30px 0 0;line-height:1.55;}
.h-actions{display:flex;gap:16px;align-items:center;margin-top:34px;flex-wrap:wrap;}
.btn{border-radius:40px;padding:15px 28px;font-size:15px;font-weight:700;display:inline-block;}
.btn-solid{background:var(--ink);color:var(--paper);} .btn-solid:hover{background:var(--accent);}
.btn-line{border:1px solid var(--ink);} .btn-line:hover{background:var(--ink);color:var(--paper);}

/* ── MOTTO STRIP ─────────────────────────────────────────── */
.motto{border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.motto .wrap{padding:30px 0;}
.motto p{font-size:clamp(26px,4.4vw,54px);font-weight:800;letter-spacing:-.035em;line-height:1.05;}
.motto .ms{font-size:16px;color:var(--soft);max-width:62ch;margin-top:12px;font-weight:400;letter-spacing:0;}

/* ── SECTION HELPERS ─────────────────────────────────────── */
.seclead{margin-bottom:14px;font-size:14px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);}
.h2big{font-size:clamp(30px,4.6vw,54px);max-width:20ch;}
.h2sub{font-size:18px;color:var(--soft);max-width:60ch;margin-top:16px;}

/* ── SERVICES (clickable rows → sub-pages) ───────────────── */
.svc{margin-top:44px;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;}
.svc a.item{background:var(--panel);padding:28px 26px;display:block;transition:background .15s;}
.svc a.item:hover{background:var(--panel2);}
.svc .item .top{display:flex;align-items:baseline;gap:12px;}
.svc .item h3{font-size:23px;font-weight:800;letter-spacing:-.02em;}
.svc .item p{color:var(--soft);font-size:15.5px;margin:10px 0 14px;line-height:1.55;}
.svc .item .tags{display:flex;flex-wrap:wrap;gap:7px;}
.svc .item .tags span{font-size:12.5px;color:var(--mut);border:1px solid var(--line);border-radius:30px;padding:5px 11px;background:var(--paper);}
.svc .item .more{margin-top:14px;font-size:13.5px;font-weight:700;color:var(--accent);}
@media(max-width:780px){.svc{grid-template-columns:1fr;}}

/* ── OUR WORK teaser ─────────────────────────────────────── */
.work-teaser{margin-top:36px;border:1px solid var(--line);border-radius:16px;background:var(--ink);color:var(--paper);padding:clamp(34px,5vw,56px);display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;}
.work-teaser h3{font-size:clamp(24px,3.2vw,38px);font-weight:800;letter-spacing:-.03em;}
.work-teaser p{color:#b9b2a4;font-size:16px;margin-top:8px;max-width:48ch;}
.work-teaser .soon{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);}

/* ── PROCESS (5 steps) ───────────────────────────────────── */
.proc{margin-top:40px;display:grid;grid-template-columns:repeat(5,1fr);gap:18px;}
.proc .s{border-top:2px solid var(--ink);padding-top:16px;}
.proc .s .n{font-weight:800;font-size:14px;color:var(--accent);}
.proc .s h3{font-size:22px;font-weight:800;margin:6px 0 8px;letter-spacing:-.02em;}
.proc .s p{font-size:14px;color:var(--soft);line-height:1.5;}
@media(max-width:860px){.proc{grid-template-columns:1fr 1fr;}}
@media(max-width:480px){.proc{grid-template-columns:1fr;}}

/* ── DIFFERENCE ──────────────────────────────────────────── */
.diff{background:var(--ink);color:var(--paper);border-radius:20px;}
.diff .wrap{padding:clamp(50px,7vw,84px) clamp(28px,5vw,56px);}
.diff .seclead{color:var(--accent);}
.diff h2{color:var(--paper);font-size:clamp(28px,4vw,46px);max-width:20ch;}
.diff .g{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:40px;border-top:1px solid rgba(239,233,220,.16);padding-top:34px;}
.diff .g h4{font-size:16px;font-weight:800;margin-bottom:9px;} .diff .g h4 .pl{color:var(--accent);}
.diff .g p{color:#b9b2a4;font-size:15px;}
@media(max-width:760px){.diff .g{grid-template-columns:1fr;gap:24px;}}

/* ── SECTORS ─────────────────────────────────────────────── */
.sectors{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px;}
.sectors span{border:1px solid var(--line);background:var(--panel);border-radius:30px;padding:9px 16px;font-size:14.5px;font-weight:600;}

/* ── GROUP ───────────────────────────────────────────────── */
.group{margin-top:34px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.group .b{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:16px 18px;}
.group .b b{font-size:17px;font-weight:800;display:block;letter-spacing:-.01em;}
.group .b span{font-size:13.5px;color:var(--mut);}
@media(max-width:760px){.group{grid-template-columns:1fr 1fr;}}
@media(max-width:480px){.group{grid-template-columns:1fr;}}

/* ── FAQ ─────────────────────────────────────────────────── */
.faq{margin-top:34px;border-top:1px solid var(--line);}
.faq details{border-bottom:1px solid var(--line);}
.faq summary{list-style:none;cursor:pointer;padding:22px 2px;font-size:19px;font-weight:700;letter-spacing:-.01em;display:flex;justify-content:space-between;gap:20px;align-items:center;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary .ic{color:var(--accent);font-weight:800;font-size:24px;flex:none;}
.faq details[open] summary .ic{transform:rotate(45deg);}
.faq p{padding:0 2px 24px;color:var(--soft);font-size:16px;max-width:80ch;}

/* ── CONTACT ─────────────────────────────────────────────── */
.contact{text-align:center;}
.contact h2{font-size:clamp(34px,6vw,72px);} .contact h2 .pl{color:var(--accent);}
.contact .clead{font-size:18px;color:var(--soft);max-width:480px;margin:18px auto 26px;}
.contact .mail{display:inline-block;font-size:clamp(20px,2.6vw,30px);font-weight:700;border-bottom:2px solid var(--line);padding-bottom:5px;}
.contact .mail:hover{border-color:var(--accent);}

/* ── FOOTER ──────────────────────────────────────────────── */
footer{background:var(--ink);color:#b4ada0;}
footer .wrap{padding:60px 0 34px;}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:34px;}
footer h4{color:#fff;font-size:13px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px;}
footer ul{list-style:none;display:flex;flex-direction:column;gap:9px;font-size:14.5px;}
footer a:hover{color:var(--accent);}
footer .blurb{font-size:14.5px;max-width:34ch;margin:14px 0 16px;}
footer .grp{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#8a8479;}
.foot-bottom{border-top:1px solid #2c2a25;margin-top:44px;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:13px;color:#8a8479;}
@media(max-width:880px){.foot-grid{grid-template-columns:1fr 1fr;gap:30px;}}
@media(max-width:480px){.foot-grid{grid-template-columns:1fr;}}

/* ── SUB-PAGE TEMPLATE ───────────────────────────────────── */
.subhead{padding:clamp(40px,6vw,72px) 0 clamp(28px,4vw,40px);border-bottom:1px solid var(--line);}
.crumbs{font-size:13.5px;color:var(--mut);margin-bottom:22px;}
.crumbs a:hover{color:var(--accent);}
.subhead h1{font-size:clamp(36px,6vw,72px);}
.subhead .lead{font-size:19px;color:var(--soft);max-width:60ch;margin-top:20px;line-height:1.55;}
.sub-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px;}
.sub-tags span{font-size:13px;color:var(--mut);border:1px solid var(--line);border-radius:30px;padding:6px 13px;background:var(--panel);}
.sub-body{padding:clamp(40px,6vw,72px) 0;}
.sub-body .lede{font-size:18px;color:var(--soft);max-width:62ch;line-height:1.65;margin-bottom:30px;}
.sub-body h2{font-size:clamp(24px,3.4vw,36px);margin:30px 0 14px;}
.deliverables{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-top:20px;}
.deliverables .d{background:var(--panel);padding:22px 22px;}
.deliverables .d b{font-size:17px;font-weight:800;display:block;margin-bottom:5px;}
.deliverables .d span{color:var(--soft);font-size:14.5px;}
@media(max-width:680px){.deliverables{grid-template-columns:1fr;}}
.soonbox{margin-top:30px;border:1px dashed var(--line);border-radius:14px;background:var(--panel);padding:26px 24px;}
.soonbox b{color:var(--accent);font-weight:800;letter-spacing:.04em;text-transform:uppercase;font-size:13px;}
.soonbox p{margin-top:8px;color:var(--soft);font-size:16px;max-width:60ch;}
.legal-body{padding:clamp(40px,6vw,72px) 0;}
.legal-body h2{font-size:clamp(22px,3vw,30px);margin:30px 0 12px;}
.legal-body h2 .pl{color:var(--accent);}
.legal-body p{font-size:16px;color:var(--soft);line-height:1.65;margin-bottom:14px;max-width:80ch;}
.legal-body p strong{color:var(--ink);}
.backlink{display:inline-block;margin-top:30px;font-weight:700;color:var(--accent);}
