/* =====================================================
   SOTEK STUDIO · editorial line
   Three rules: no numbers, one alignment (label | text),
   three sizes (title, text, label).
   ===================================================== */
:root{--w:'Archivo','Inter Tight',sans-serif;--col:200px;--gapc:clamp(24px,3vw,48px)}
.edp{max-width:1080px;margin:0 auto;padding:0 var(--pad)}

/* the three sizes */
.e-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--mid);line-height:1.9}
.e-title{font-family:var(--w);font-stretch:125%;font-weight:500;text-transform:uppercase;font-size:clamp(28px,3.6vw,52px);line-height:1;letter-spacing:-.01em;color:var(--ink)}
.e-text,.e-row p,.e-list a{font-size:clamp(16px,1.2vw,18px);font-weight:300;line-height:1.65;color:#2b2b2a}

/* page head */
.e-head{padding:clamp(120px,18vh,170px) 0 clamp(36px,6vh,56px);display:grid;grid-template-columns:var(--col) 1fr;gap:18px var(--gapc);border-bottom:1px solid var(--line)}
.e-head .e-label{grid-column:2}
.e-head .e-title{grid-column:2}
.e-head .e-text{grid-column:2;max-width:46ch;margin-top:6px}
.e-head.after-hero{padding-top:clamp(60px,10vh,100px)}

/* rows: label | text, always */
.e-row{display:grid;grid-template-columns:var(--col) 1fr;gap:var(--gapc);padding:clamp(26px,4vh,38px) 0;border-bottom:1px solid var(--line)}
.e-row p{max-width:52ch}
.e-row p+p{margin-top:14px}
.e-row p b{font-weight:500}
.e-row a.ul,.e-head a.ul{border-bottom:1px solid currentColor;padding-bottom:1px;transition:opacity .2s}
.e-row a.ul:hover{opacity:.5}

/* service lists inside a row */
.e-list{list-style:none;max-width:52ch}
.e-list li+li{margin-top:2px}
.e-list a{display:flex;justify-content:space-between;gap:20px;padding:6px 0;transition:color .2s}
.e-list a::after{content:'→';color:var(--soft);transition:transform .3s var(--ease),color .2s}
.e-list a:hover{color:var(--mid)}
.e-list a:hover::after{transform:translateX(4px);color:var(--ink)}
.e-inline{max-width:52ch}
.e-inline a{border-bottom:1px solid var(--line);transition:border-color .2s}
.e-inline a:hover{border-color:var(--ink)}

.e-logos{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;align-items:center;max-width:52ch}
.e-logos img{height:18px;width:auto;filter:brightness(0);opacity:.5}

/* prev / next: same row pattern */
.e-pn{display:grid;grid-template-columns:var(--col) 1fr 1fr;gap:var(--gapc);padding:clamp(26px,4vh,38px) 0}
.e-pn a{font-size:clamp(16px,1.2vw,18px);font-weight:300;transition:color .2s}
.e-pn a:last-child{text-align:right}
.e-pn a:hover{color:var(--mid)}

/* header + footer in the same line */
.hd-logo,.hd-link,.hd-burger{font-size:11px!important;letter-spacing:.08em;text-transform:uppercase;font-weight:500!important}
.mg-h{font-size:11px!important;letter-spacing:.08em;text-transform:uppercase;font-weight:500}
.mg-col li a{font-weight:300}
.mob-svc summary,.mob-big{font-family:var(--w);font-stretch:125%;font-weight:500!important;text-transform:uppercase;font-size:26px!important;letter-spacing:0!important}
.ft-big{font-family:var(--w);font-stretch:125%;font-weight:500!important;text-transform:uppercase;font-size:clamp(28px,3.6vw,52px)!important;letter-spacing:-.01em!important;line-height:1!important}
.ft-h,.ft-cta,.ft-bot{font-size:11px!important;letter-spacing:.08em;text-transform:uppercase;font-weight:500}

@media(max-width:900px){
  .e-head,.e-row{grid-template-columns:1fr;gap:10px}
  .e-head .e-label,.e-head .e-title,.e-head .e-text{grid-column:1}
  .e-title{font-size:clamp(24px,7.4vw,40px);overflow-wrap:anywhere}
  .e-pn{grid-template-columns:1fr 1fr}
  .e-pn .e-label{display:none}
}

/* contact form */
.e-form{display:grid;gap:22px;max-width:52ch;width:100%}
.e-hp{position:absolute;left:-9999px}
.e-f{display:grid;gap:6px;border:0;padding:0;margin:0}
.e-f input,.e-f textarea{font:inherit;font-size:16px;text-transform:none;background:none;border:0;border-bottom:1px solid var(--line);padding:8px 0;color:var(--ink);border-radius:0;outline:none;transition:border-color .25s;width:100%}
.e-f input:focus,.e-f textarea:focus{border-color:var(--ink)}
.e-f textarea{resize:vertical;min-height:110px}
.e-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.e-chips input{position:absolute;opacity:0;pointer-events:none}
.e-chips span{display:inline-block;font-size:11.5px;letter-spacing:.04em;padding:8px 13px;border:1px solid var(--line);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.e-chips input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}
.e-chips input:focus-visible+span{outline:1px solid var(--ink);outline-offset:2px}
.e-send{justify-self:start;text-transform:uppercase;font-size:11.5px;letter-spacing:.04em;font-weight:500;background:var(--ink);color:#fff;padding:14px 22px;transition:background .25s}
.e-send:hover{background:#333}
.e-send:disabled{opacity:.5}
.e-note{font-size:11.5px;color:var(--mid);min-height:1.5em}
