/* ── Direction B · "Plan" ─────────────────────────────────────────────
   The renovation file of an architect: drawing grid, measured facts, square
   corners. One typeface (Archivo, used wide for titles and normal for text),
   black heroes overlaid with a faint plan grid, white sheets for content.
   Accent: the champagne gold of the Estatelys logo, used for actions only.  */
:root{
  --acc:#c8a97e; --acc2:#dcc39d;
  --bg:#ffffff; --bg2:#f5f5f3; --bg3:#e9e9e6;
  --tx:#111111; --mu:#5c5c58; --gold:#111111; --gold2:#000000;
  --line:#dcdcd8; --line2:#111111; --goldbg:var(--acc); --goldbg2:var(--acc2); --ink:#111111;
  --disp:"Archivo",system-ui,sans-serif; --sans:"Archivo",system-ui,sans-serif;
}
.dk,.hdr,.ftr,.band,.lb,.mnav{
  --bg:#000000; --bg2:#0d0d0d; --bg3:#1a1a1a; --tx:#f2f2ef; --mu:#a3a39e;
  --gold:var(--acc); --gold2:var(--acc2); --line:rgba(242,242,239,.16); --line2:rgba(242,242,239,.4);
  --goldbg:var(--acc); --goldbg2:var(--acc2); --ink:#111111;
}
body{font-weight:400;font-size:16.5px;font-variation-settings:"wdth" 100}
h1,h2,h3,.h3,.h4{font-family:var(--disp);font-weight:650;font-stretch:118%;font-variation-settings:"wdth" 118;letter-spacing:-.025em;line-height:1.02}
h1{font-size:clamp(2.6rem,6.4vw,5.8rem)}
h2{font-size:clamp(2rem,4vw,3.4rem)}
.h3,h3{font-size:clamp(1.35rem,2vw,1.8rem)}
.eyebrow{text-transform:none;letter-spacing:0;font-size:.85rem;font-weight:500;color:var(--mu)}
.eyebrow::before{content:"";display:inline-block;width:22px;height:2px;background:var(--goldbg);vertical-align:middle;margin-right:10px}
.arr{font-style:normal}
.btn{border-radius:0;text-transform:none;letter-spacing:0;font:600 .95rem/1 var(--sans);padding:16px 26px}
.btn-o{color:var(--tx);border-color:var(--tx)}
.link{text-transform:none;letter-spacing:0;font-size:.95rem;font-weight:600;color:var(--tx);border-bottom:2px solid var(--goldbg)}
.nav a,.langs a{text-transform:none;letter-spacing:0;font-size:.9rem;font-weight:500}
.nav a[aria-current]{border-bottom:2px solid var(--goldbg)}
.langs{border-color:var(--line2)}
/* plan grid over black heroes */
.hero::after,.phero::after,.phdr::after{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);
  background-size:48px 48px}
.phdr{position:relative}
.phdr>.wrap{position:relative;z-index:1}
.hero-in,.phero-in{z-index:1}
/* stats: a measured strip */
.stats{border-block:1px solid var(--tx)}
.stats-in>*{border-right:1px solid var(--tx);text-align:center;padding:28px 22px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.stats b{font-family:var(--disp);font-weight:700;color:var(--tx);font-variant-numeric:tabular-nums}
.stats b.sm{font-size:clamp(1.05rem,1.6vw,1.35rem)}
.stats span{text-transform:none;letter-spacing:0;font-size:.85rem}
/* cards: drawing sheets with a title block */
.card{border:1px solid var(--tx);background:#fff}
.card-m{aspect-ratio:3/2;border-bottom:1px solid var(--tx)}
.card-b{padding:20px 22px}
.card-b h3{font-size:1.7rem}
.card-f{border-top:1px solid var(--tx);margin:16px -22px -20px;padding:14px 22px;display:grid;grid-template-columns:1fr auto}
.price{font-family:var(--disp);font-weight:700;color:var(--tx);font-size:1.5rem;font-variant-numeric:tabular-nums}
.yield{text-transform:none;letter-spacing:0;font-size:.9rem;background:var(--goldbg);padding:4px 8px}
.tag{background:var(--goldbg);color:#111;border:0;text-transform:none;letter-spacing:0;font-weight:600;font-size:.8rem}
.svc{background:var(--tx);border:1px solid var(--tx);gap:1px}
.num{font-family:var(--disp);font-weight:700;font-size:1rem;color:var(--mu)}
.city img{aspect-ratio:1/1;filter:grayscale(1) contrast(1.05)}
.city figcaption{text-transform:none;letter-spacing:0;font-size:.85rem}
/* facts become a spec table */
.chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;border:1px solid var(--tx)}
.chips li{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-transform:none;letter-spacing:0;font-size:.95rem;padding:14px 16px}
.pbox{border:1px solid var(--tx);background:#fff}
.pbig{font-family:var(--disp);font-weight:700;color:var(--tx)}
.inv{background:var(--tx);border:1px solid var(--tx)}
.inv>div{background:#fff}
.inv b{font-family:var(--disp);font-weight:700;color:var(--tx);font-variant-numeric:tabular-nums}
.inv span,.form label span,.ldl dt,.res-a{text-transform:none;letter-spacing:0;font-size:.85rem}
.res-a{color:var(--tx);font-weight:600}
.plans img{border:1px solid var(--tx)}
.form input,.form textarea,.form select{background:#fff;border-color:var(--tx)}
.ref{border:1px solid var(--tx);background:#fff}
.band h2{font-family:var(--disp)}
.stats b.sm{font-size:clamp(.95rem,1.35vw,1.2rem);letter-spacing:0}
/* price: EUR left, HUF right */
.pd{display:flex;align-items:baseline;justify-content:space-between;gap:.75em;width:100%;flex-wrap:wrap}
.pd-h{font-size:.62em;font-weight:600;color:var(--mu);white-space:nowrap}
.pd-e{white-space:nowrap}
.price{display:block;width:100%}
.pbig .pd{flex-wrap:nowrap}.pbig{font-size:clamp(1.5rem,2.3vw,2.1rem)}
/* hero title: forced 3 lines on desktop (FR) */
.hero h1:has(br.brd){max-width:none}
@media (max-width:760px){.hero h1 br.brd{display:none}}
/* header: contact button same frame height as the language switch */
.hdr-r{align-items:center}
.hdr-r>.langs{height:38px;align-items:stretch}
.hdr-r>.langs a{display:flex;align-items:center;padding:0 9px}
.hdr-r>.btn-s{height:38px;padding:0 18px;font-size:.9rem}
/* stats: all labels on one line, whatever the value size */
.stats b{height:calc(clamp(1.8rem,3.4vw,3rem)*1.1);display:flex;align-items:center;justify-content:center}
.stats-in>*{justify-content:flex-start}
