/* Artlandia Architects – artlandia.sk */
:root{
  --ink:#2e2e30;--ink2:#4a4a4c;--muted:#5c5c5e;--grey:#6a6a6a;--line:#e4e0d8;--line2:#d9d4ca;
  --gold:#c4a07a;--goldtx:#8c6a43;--bg:#fff;--soft:#f7f4ee;--frame:#dcdcdc;
  --wa-bg:#e4f3e9;--wa-tx:#1e6b3e;--wa-bd:#a8d4b6;
  --r:4px;--rc:10px;--w:1360px;--pad:40px;
  --serif:Jost,"Helvetica Neue",Arial,sans-serif;--sans:Inter,"Helvetica Neue",Arial,sans-serif;
}
*,*:before,*:after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--ink);text-decoration:none}
a:hover{color:var(--goldtx)}
h1,h2,h3{font-family:var(--serif);font-weight:300;margin:0;line-height:1.1}
p{margin:0}
button{font:inherit;cursor:pointer}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{max-width:var(--w);margin:0 auto;padding:0 var(--pad)}
.eyebrow{font-size:12px;letter-spacing:.24em;color:var(--goldtx);text-transform:uppercase;margin:0 0 16px}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:10px 16px;z-index:50}
.skip:focus{left:8px;color:#fff}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* header */
.hdr{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:saturate(1.2) blur(6px)}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:20px;padding-bottom:20px}
.logo img{height:52px;width:auto}
.nav{display:flex;gap:40px;align-items:center;font-size:14px;letter-spacing:.06em}
.nav a{color:var(--grey)}
.nav a[aria-current]{color:var(--ink);border-bottom:1px solid var(--gold);padding-bottom:4px}
.nav a:hover{color:var(--goldtx)}
.lang{font-size:12px;letter-spacing:.12em;color:var(--grey);padding-left:20px;border-left:1px solid var(--line2);display:flex;gap:10px}
.lang b{color:var(--ink);font-weight:500}
.burger{display:none;width:44px;height:44px;border:0;background:transparent;align-items:center;justify-content:center;margin-right:-10px}
.burger span{display:block;width:26px;height:1.5px;background:var(--ink);box-shadow:0 7px 0 var(--gold),0 14px 0 var(--ink);margin-top:-14px}
.menu{position:fixed;inset:0;z-index:40;background:#fff;display:flex;flex-direction:column;padding:20px;overflow:auto;transform:translateX(100%);transition:transform .35s ease;visibility:hidden}
.menu.open{transform:none;visibility:visible}
.menu-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--line)}
.menu-top img{height:38px;width:auto}
.menu-close{width:44px;height:44px;border:0;background:transparent;font-size:30px;line-height:1;margin-right:-10px}
.menu nav{display:flex;flex-direction:column;padding:20px 0}
.menu nav a{display:flex;justify-content:space-between;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--line);font:300 30px/1.2 var(--serif)}
.menu nav a span{font-size:14px;color:var(--goldtx)}
.menu .btns{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.menu .soc{display:flex;gap:20px;font-size:14px;margin-top:24px}
.menu .btn-call{background:#fff;color:var(--ink);border:1px solid var(--ink)}
.menu .btn-call:hover{background:var(--soft);color:var(--ink)}
.lang-m{display:none}

/* buttons */
.btn{display:inline-block;font-size:13px;letter-spacing:.16em;padding:18px 36px;border:1px solid var(--ink);border-radius:var(--r);text-transform:uppercase;text-align:center;background:transparent;color:var(--ink)}
.btn:hover{background:var(--ink);color:#fff}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{background:#000;color:#fff}
.btn-call{padding:15px;text-align:center;background:var(--ink);color:#fff;border-radius:var(--r);font-size:14px}
.btn-call:hover{color:#fff;background:#000}
.btn-wa{padding:15px;text-align:center;background:var(--wa-bg);color:var(--wa-tx);border:1px solid var(--wa-bd);border-radius:var(--r);font-size:14px}
.btn-wa:hover{color:var(--wa-tx);background:#d4ecdc}
.lnk{font-size:14px;border-bottom:1px solid var(--ink);padding-bottom:3px;align-self:flex-start}

/* hero */
.hero{position:relative;height:640px;overflow:hidden;background:var(--ink);color:#fff}
.hero .sl{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1);transition:opacity 1.4s ease,transform 7s ease}
.hero .sl.on{opacity:1;transform:scale(1.04)}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,20,22,.55) 0%,rgba(20,20,22,.15) 50%,rgba(20,20,22,0) 75%);pointer-events:none}
.hero-in{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:64px}
.hero-kick{display:flex;align-items:center;gap:14px;margin-bottom:22px;font-size:12px;letter-spacing:.24em;color:rgba(255,255,255,.85)}
.hero-kick:before{content:"";width:40px;height:1px;background:var(--gold)}
.hero h1{font-size:68px;line-height:1.02;max-width:720px;margin-bottom:20px}
.hero p{font-size:18px;max-width:560px;color:rgba(255,255,255,.88)}
.hero-ctl{position:absolute;right:var(--pad);bottom:56px;z-index:3;display:flex;flex-direction:column;align-items:flex-end;gap:16px}
.hero-num{font-family:var(--serif);display:flex;align-items:baseline;gap:6px}
.hero-num b{font-size:40px;font-weight:300}
.hero-num span{font-size:15px;color:rgba(255,255,255,.7)}
.hero-cap{font-size:13px;color:rgba(255,255,255,.85)}
.dots{display:flex;gap:8px}
.dots button{width:14px;height:2px;border:0;padding:0;background:rgba(255,255,255,.5);transition:width .4s}
.dots button[aria-current]{width:32px;background:var(--gold)}
.dots button:before{content:"";display:block;height:20px;margin-top:-9px}

.stats{border-bottom:1px solid var(--line)}
.stats .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.stats .wrap>div{padding:36px 24px 36px 0;margin-right:24px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:6px}
.stats .wrap>div:last-child{border-right:0}
.stats svg{width:34px;height:34px;margin-bottom:8px}
.stats b{font:300 36px/1.1 var(--serif)}
.stats span{font-size:13px;color:var(--grey)}

/* sections */
.sec{padding-top:120px}
.sec-lg{padding-top:140px}
.g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px}
.intro{align-items:end;margin-bottom:56px}
.intro h2,.h2{font-size:46px}
.intro p.lead,.lead{font-size:17px;line-height:1.75;color:var(--muted)}
.center{display:flex;justify-content:center;padding-top:64px}

/* masonry tiles */
.mas{columns:4;column-gap:16px}
.tile{display:block;break-inside:avoid;margin-bottom:28px;color:var(--ink)}
.tile img{width:100%;height:auto;border-radius:var(--r);border:1px solid var(--frame);background:#f2f2f2;transition:opacity .4s ease}
.tile:hover img{opacity:.86}
.tile .cap{display:flex;flex-direction:column;gap:3px;padding:12px 2px 0}
.tile .t{font-size:10px;letter-spacing:.18em;color:var(--goldtx);text-transform:uppercase}
.tile .n{font:400 20px/1.25 var(--serif);color:var(--ink)}
.tile .p{font-size:13px;color:var(--grey)}
.tile:hover .n{color:var(--goldtx)}

/* motto */
.quote{padding-top:120px;padding-bottom:100px}
.quote p{font:300 40px/1.25 var(--serif);max-width:980px;text-wrap:balance;position:relative;padding-left:56px}
.quote p:before{content:"";position:absolute;left:0;top:.62em;width:36px;height:1px;background:var(--gold)}
/* ďalšie práce – 3 náhodné obrázky */
.more{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.2fr);gap:48px;align-items:start;padding:40px 0;border-top:1px solid var(--line)}
.more:last-child{border-bottom:1px solid var(--line)}
.more-h{display:flex;flex-direction:column;gap:12px}
.more-h b{font:400 30px var(--serif)}
.more-h span{font-size:15px;line-height:1.7;color:var(--muted)}
.mini{display:flex;gap:10px;align-items:flex-start}
.mini a{display:block;flex:1 1 0;min-width:0}
.mini img{width:100%;height:auto;border-radius:var(--r);border:1px solid var(--frame);background:#f2f2f2;transition:opacity .4s}
.mini a:hover img{opacity:.86}
.mini a[hidden]{display:none}
/* process */
.ruler{position:relative;height:14px;margin-bottom:8px}
.ruler:before{content:"";position:absolute;left:0;right:0;top:7px;height:1px;background:var(--gold)}
.ruler i{position:absolute;top:0;width:1px;height:14px;background:var(--gold)}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.steps>div{padding:24px 32px 0 0;display:flex;flex-direction:column;gap:12px}
.steps .n{font:400 14px var(--serif);color:var(--goldtx)}
.steps h3{font:400 22px/1.3 var(--serif)}
.steps p{font-size:15px;line-height:1.7;color:var(--muted)}

.more2{gap:28px}
.card{display:flex;flex-direction:column;gap:16px}
.card .im{height:380px;overflow:hidden;border-radius:var(--rc)}
.card .im img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.card:hover .im img{transform:scale(1.03)}
.card b{font:400 26px var(--serif)}
.card span{font-size:15px;color:var(--muted)}

.about{align-items:center}
.about .txt{display:flex;flex-direction:column;gap:20px}
.about h2{font-size:40px;line-height:1.2}
.about .txt p{font-size:16px;line-height:1.8;color:var(--muted)}
.about .ph{height:440px;border-radius:var(--rc);overflow:hidden}
.about .ph img{width:100%;height:100%;object-fit:cover}

.clients{margin-top:140px;background:var(--ink);border-bottom:1px solid rgba(255,255,255,.12)}
.clients .wrap{padding-top:64px;padding-bottom:56px}
.clients h2{display:flex;align-items:center;gap:24px;margin-bottom:36px;font:400 12px var(--sans);letter-spacing:.24em;color:rgba(255,255,255,.65)}
.clients h2:before,.clients h2:after{content:"";flex:1;height:1px;background:rgba(255,255,255,.15)}
.cl{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:28px 48px}
.cl img{height:64px;width:auto;filter:grayscale(1) brightness(1.6);opacity:.55;transition:filter .3s,opacity .3s}
.cl img:hover{filter:none;opacity:1}

/* footer */
.ftr{background:var(--ink);color:#fff}
.ftr a{color:#fff}
.ftr a:hover{color:var(--gold)}
.ftr .main{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:80px;padding-top:96px;padding-bottom:72px}
.ftr h2{font-size:44px;margin:0 0 18px}
.ftr .eyebrow{color:var(--gold)}
.ftr .intro-t{font-size:16px;line-height:1.7;color:rgba(255,255,255,.75);max-width:520px}
.fcols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;font-size:14px;line-height:1.9;margin-top:48px}
.fcols div{display:flex;flex-direction:column}
.fcols .h{font-size:11px;letter-spacing:.2em;color:var(--gold);margin-bottom:8px;text-transform:uppercase}
.fcols .bill{color:rgba(255,255,255,.78)}
.fcols .arch{margin-top:12px;font-size:13px;line-height:1.6}
.fcols .arch a{border-bottom:1px solid var(--gold)}
.qf{display:flex;flex-direction:column;gap:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:var(--rc);padding:32px;align-self:start}
.qf .ttl{font:400 22px var(--serif)}
.qf label{display:flex;flex-direction:column;gap:6px;font-size:12px;letter-spacing:.08em;color:rgba(255,255,255,.7)}
.qf input,.qf textarea{background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.35);color:#fff;font:16px var(--sans);padding:8px 0;border-radius:0}
.qf textarea{resize:vertical}
.qf input:focus,.qf textarea:focus{outline:0;border-bottom-color:var(--gold)}
.qf .row{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-top:6px}
.qf .row a{font-size:13px;color:rgba(255,255,255,.7)}
.qf button{font-size:13px;letter-spacing:.16em;padding:16px 32px;background:var(--gold);color:var(--ink);border:0;border-radius:var(--rc)}
.qf button:hover{background:#d3b28e}
.fbar{border-top:1px solid rgba(255,255,255,.12)}
.fbar .wrap{padding-top:28px;padding-bottom:28px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;font-size:13px;color:rgba(255,255,255,.65)}
.fbar img{height:28px;width:auto}
.fbar nav{display:flex;gap:28px;flex-wrap:wrap}
.fbar nav a{color:rgba(255,255,255,.75)}
.hp{position:absolute!important;left:-5000px!important;width:1px;height:1px;overflow:hidden}
.fmsg{font-size:14px;line-height:1.5;padding:12px 14px;border-radius:var(--r);display:none}
.fmsg.ok{display:block;background:rgba(168,212,182,.15);color:#bfe6cc}
.fmsg.err{display:block;background:rgba(220,120,100,.15);color:#f1b8a8}

.sticky{display:none}

/* sub pages */
.phead{padding-top:88px}
.phead h1{font-size:60px;line-height:1.04;margin-bottom:24px}
.crumb{display:flex;justify-content:space-between;gap:20px;font-size:13px;color:var(--grey);padding-top:28px;padding-bottom:28px}
.crumb a{color:var(--grey)}
.pimg{height:640px;overflow:hidden;border-radius:var(--rc);background:#eee}
.pimg img{width:100%;height:100%;object-fit:cover}
.two{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:96px}
.ptext h1{font-size:58px;line-height:1.04;margin-bottom:28px}
.ptext .sub{font:400 25px/1.45 var(--serif);color:#3c3c3e;margin-bottom:26px}
.ptext p{font-size:17px;line-height:1.8;color:var(--ink2);margin-bottom:18px}
.ptext h2{font:400 24px/1.3 var(--serif);margin:40px 0 14px}
.facts{margin:0;border-top:1px solid var(--ink)}
.facts div{display:flex;justify-content:space-between;gap:24px;padding:16px 0;border-bottom:1px solid #e0dbd2;font-size:15px}
.facts dt{color:var(--grey)}
.facts dd{margin:0;text-align:right}
.aside{align-self:start;position:sticky;top:110px}
.aside .btn{display:block;margin-top:32px}
.pgal{columns:2;column-gap:12px}
.pgal a{display:block;break-inside:avoid;margin-bottom:12px;border-radius:var(--r);overflow:hidden;border:1px solid var(--frame);background:#f2f2f2;cursor:zoom-in}
.pgal img{width:100%;height:auto}
.hline{display:flex;align-items:center;gap:14px;margin-bottom:28px}
.hline h2{font-size:32px}
.hline:after{content:"";flex:1;height:1px;background:var(--gold)}
.g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.sim{display:flex;flex-direction:column;gap:14px}
.sim .im{height:420px;overflow:hidden;border-radius:var(--rc)}
.sim .im img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .8s ease}
.sim:hover .im img{transform:scale(1.03)}
.sim b{font:400 21px var(--serif)}
.sim span{font-size:13px;color:var(--grey)}
.arch-tag{display:inline-block;font-size:11px;letter-spacing:.18em;color:var(--grey);border:1px solid var(--line2);border-radius:20px;padding:4px 10px;margin-bottom:16px}

/* archive */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:40px 0 28px}
.chips button{font-size:14px;padding:10px 18px;border:1px solid var(--line2);background:#fff;color:var(--ink);border-radius:30px;white-space:nowrap}
.chips button span{opacity:.55;margin-left:4px}
.chips button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.agrid{--cols:6;columns:6;column-gap:12px}
.agrid.js-mas{columns:auto;display:flex;gap:12px;align-items:flex-start}
.agrid .acol{flex:1 1 0;min-width:0}
.agrid.sims{margin-top:8px}
.atile{display:inline-block;width:100%;vertical-align:top;break-inside:avoid;color:var(--ink);margin-bottom:18px}
.atile img{width:100%;height:auto;border-radius:var(--r);border:1px solid var(--frame);background:#f2f2f2;filter:grayscale(1);transition:filter .4s}
.atile:hover img{filter:none}
.atile .cap{display:flex;flex-direction:column;gap:2px;padding:10px 2px 0}
.atile b{font:400 16px/1.25 var(--serif)}
.atile span{font-size:12px;color:var(--grey)}
.atile:hover b{color:var(--goldtx)}
.atile[hidden]{display:none}

.abox{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:center;border-top:1px solid var(--line2);border-bottom:1px solid var(--line2);padding:48px 0}
.abox h2{font-size:40px;margin-bottom:12px}

/* services */
.svc{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:96px}
.svc ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.svc li{padding:14px 0;border-bottom:1px solid var(--line)}
.price{background:var(--soft);border-radius:var(--rc);padding:36px;display:flex;flex-direction:column;gap:18px;margin-top:40px}
.price p{font-size:16px;line-height:1.7;color:var(--muted)}
.price .btns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.steps3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.steps3>div{display:flex;flex-direction:column;gap:10px;padding-top:22px;border-top:1px solid var(--gold)}
.steps3 .n{font:400 14px var(--serif);color:var(--goldtx)}
.steps3 h3{font:400 22px var(--serif)}
.steps3 p{font-size:15px;line-height:1.7;color:var(--muted)}
.gmas{columns:3;column-gap:4px}
.gmas{column-gap:14px}
.gmas a{display:block;break-inside:avoid;margin-bottom:20px;cursor:zoom-in;color:var(--ink)}
.gmas img{width:100%;height:auto;border-radius:var(--r);border:1px solid var(--frame);background:#f2f2f2;transition:opacity .4s}
.gmas a:hover img{opacity:.86}
.gcap{display:block;padding:9px 2px 0;font:400 15px/1.3 var(--serif)}
.gmas a:hover .gcap{color:var(--goldtx)}
.strip{display:flex;gap:10px;align-items:flex-start;margin-top:28px}
.strip a{flex:1 1 0;min-width:0}
.strip a[hidden]{display:none}
.strip img{width:100%;height:auto;border-radius:var(--r);border:1px solid var(--frame);filter:grayscale(1);opacity:.85;transition:filter .4s,opacity .4s}
.strip a:hover img{filter:none;opacity:1}
.strip.color{margin-top:0}
.strip.color img{filter:none;opacity:1}
.strip.color a:hover img{opacity:.86}

/* lightbox */
.lb{position:fixed;inset:0;z-index:60;background:rgba(20,20,22,.95);display:none;align-items:center;justify-content:center}
.lb.open{display:flex}
.lb img{max-width:calc(100vw - 160px);max-height:calc(100vh - 120px);width:auto;height:auto;object-fit:contain}
.lb button{position:absolute;border:0;background:transparent;color:#fff;width:60px;height:60px;font-size:34px;line-height:1;opacity:.8}
.lb button:hover{opacity:1}
.lb .x{top:16px;right:16px}
.lb .pv{left:12px;top:50%;margin-top:-30px}
.lb .nx{right:12px;top:50%;margin-top:-30px}
.lb .lbc{position:absolute;bottom:20px;left:0;right:0;text-align:center;font:15px var(--serif);color:rgba(255,255,255,.85);padding:0 20px}

/* contact */
.kt{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:96px}
.klist{display:flex;flex-direction:column;border-top:1px solid var(--ink)}
.klist>a,.klist>div{display:flex;justify-content:space-between;gap:16px;padding:20px 0;border-bottom:1px solid #e0dbd2;font-size:16px}
.klist .k{color:var(--grey)}
.kbill{display:flex;flex-direction:column;gap:4px;font-size:14px;line-height:1.7;color:var(--muted);margin-top:44px}
.kbill .h{font-size:11px;letter-spacing:.2em;color:var(--goldtx);margin-bottom:6px}
.kbill a{border-bottom:1px solid var(--gold)}
.bigf{display:flex;flex-direction:column;gap:32px;border:1px solid #e0dbd2;border-radius:var(--rc);padding:48px}
.bigf fieldset{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.bigf legend,.bigf .lbl{font-size:12px;letter-spacing:.08em;color:var(--grey);padding:0;margin-bottom:14px}
.pills{display:flex;flex-wrap:wrap;gap:8px}
.pills label{position:relative}
.pills input{position:absolute;opacity:0;pointer-events:none}
.pills span{display:inline-block;font-size:14px;padding:10px 18px;border:1px solid var(--line2);border-radius:30px;cursor:pointer;background:#fff}
.pills input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
.pills input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px}
.lab{display:flex;flex-direction:column;gap:8px;font-size:12px;letter-spacing:.08em;color:var(--grey)}
.inp{border:0;border-bottom:1px solid #c9c9c9;padding:10px 0;font:16px var(--sans);color:var(--ink);background:transparent;border-radius:0}
.inp:focus{outline:0;border-bottom-color:var(--gold)}
textarea.inp{border:1px solid #c9c9c9;border-radius:var(--rc);padding:14px;resize:vertical;min-height:140px}
textarea.inp:focus{border-color:var(--gold)}
.mrow{display:flex;justify-content:space-between;align-items:center;gap:12px}
.mic{display:inline-flex;align-items:center;gap:8px;font-size:13px;padding:8px 14px;border:1px solid var(--line2);border-radius:30px;background:#fff;color:var(--ink)}
.mic[aria-pressed=true]{background:#fbeee3;border-color:var(--gold);color:var(--goldtx)}
.mic[hidden]{display:none}
.mhint{font-size:12px;color:var(--goldtx);display:none}
.mhint.on{display:block}
.files{border:1px dashed var(--line2);border-radius:var(--rc);padding:18px;display:flex;flex-direction:column;gap:4px;cursor:pointer}
.files b{font-weight:400}
.files small{font-size:12px;color:var(--grey)}
.files input{font-size:13px;margin-top:8px}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:13px;line-height:1.5;color:var(--muted)}
.consent input{margin-top:3px;accent-color:var(--ink)}
.consent a{text-decoration:underline;color:var(--muted)}
.bigf .fmsg.ok{background:#e4f3e9;color:#1e6b3e}
.bigf .fmsg.err{background:#fbe9e5;color:#9a3b25}
.submit{font-size:13px;letter-spacing:.16em;padding:18px;background:var(--ink);color:#fff;border:0;border-radius:var(--rc)}
.submit:hover{background:#000}
.submit[disabled]{opacity:.6}

.prose{max-width:780px}
.prose h2{font:400 26px/1.3 var(--serif);margin:40px 0 14px}
.prose p,.prose li{font-size:16px;line-height:1.8;color:var(--ink2)}
.prose p{margin-bottom:14px}

/* responsive */
@media (max-width:1100px){.mas{columns:3}.agrid{--cols:4;columns:4}.agrid.sims{--cols:3;columns:3}.gmas{columns:2}}
@media (max-width:1000px){
  :root{--pad:28px}
  .nav{display:none}.burger{display:flex}
  .lang-m{display:flex;border:0;padding:0;margin-left:auto;margin-right:6px;font-size:13px}
  .lang-m a,.lang-m b{padding:10px 4px}
  .g2,.two,.svc,.kt{grid-template-columns:minmax(0,1fr);gap:40px}
  .stats .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stats .wrap>div:nth-child(2){border-right:0}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}
  .ruler{display:none}
  .more{grid-template-columns:minmax(0,1fr);gap:20px}
  .quote p{font-size:32px}
  .ftr .main{grid-template-columns:minmax(0,1fr);gap:48px}
  .aside{position:static}
  .g3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  :root{--pad:20px}
  body{padding-bottom:52px}
  .hdr .wrap{padding-top:14px;padding-bottom:14px}
  .logo img{height:38px}
  .quote{padding-top:72px;padding-bottom:64px}
  .quote p{font-size:25px;padding-left:40px}
  .quote p:before{width:26px}
  .more-h b{font-size:24px}
  .mini{gap:6px}
  .hero{height:560px}
  .hero h1{font-size:40px}
  .hero p{font-size:15px}
  .hero-in{padding-bottom:150px}
  .hero-ctl{left:var(--pad);right:var(--pad);bottom:28px;align-items:flex-start}
  .hero-num b{font-size:28px}
  .stats b{font-size:26px}
  .stats svg{width:28px;height:28px}
  .strip{gap:6px}
  .strip a:nth-child(n){}
  .gcap{font-size:13px}
  .stats .wrap>div{padding:22px 12px 22px 0;margin-right:12px}
  .sec{padding-top:72px}.sec-lg{padding-top:84px}
  .intro{margin-bottom:28px}
  .intro h2,.h2{font-size:32px}
  .mas{columns:2}
  .tile{margin-bottom:20px}.mas{column-gap:10px}
  .tile .n{font-size:16px}
  .tile .t{font-size:9px;letter-spacing:.12em}.agrid{column-gap:10px}.agrid.js-mas{gap:10px}
  .steps{grid-template-columns:minmax(0,1fr)}
  .steps>div{padding:18px 0 0;border-top:1px solid var(--gold)}
  .more2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .card .im{height:200px}
  .card b{font-size:18px}.card span{display:none}
  .about h2{font-size:30px}
  .about .ph{height:auto}.about .ph img{aspect-ratio:3/2}
  .clients{margin-top:84px}
  .cl{gap:18px 22px}.cl img{height:40px}
  .ftr .main{padding-top:56px;padding-bottom:40px}
  .ftr h2{font-size:32px}
  .fcols{grid-template-columns:1fr 1fr;gap:24px}
  .fcols>div:last-child{grid-column:1/-1}
  .qf{padding:22px}
  .fbar nav{display:none}
  .sticky{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid var(--line2)}
  .sticky a{padding:16px;text-align:center;font-size:14px}
  .sticky a:first-child{border-right:1px solid var(--line2)}
  .sticky a.wa{background:var(--wa-bg);color:var(--wa-tx)}
  .phead{padding-top:40px}
  .phead h1,.ptext h1{font-size:36px}
  .ptext .sub{font-size:19px}
  .ptext p{font-size:16px}
  .pimg{height:auto}.pimg img{aspect-ratio:4/3}
  .crumb span:last-child{display:none}
  .pgal{columns:1}
  .g3{grid-template-columns:minmax(0,1fr)}
  .sim .im{height:auto}.sim .im img{aspect-ratio:4/3}
  .chips{margin:24px 0 18px;gap:6px}
  .chips button{font-size:13px;padding:8px 12px}
  .agrid,.agrid.sims{--cols:2;columns:2}

  .abox{grid-template-columns:minmax(0,1fr);gap:20px;padding:32px 0}
  .abox h2{font-size:30px}
  .gmas{columns:2}
  .steps3{grid-template-columns:minmax(0,1fr);gap:24px}
  .bigf{padding:22px;gap:26px}
  .f2{grid-template-columns:minmax(0,1fr)}
  .lb img{max-width:100vw;max-height:calc(100vh - 140px)}
  .lb .pv,.lb .nx{top:auto;bottom:6px;margin:0}
  .lb .lbc{bottom:70px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.hdr,.ftr,.sticky,.menu,.lb,.hero-ctl{display:none!important}}
