/* רושם ראשון — v4. Ink, cream, clay. Mobile-first, RTL, WCAG 2.0 AA / ת״י 5568 */

@font-face{font-family:Heebo;src:url("../fonts/Heebo-Variable.ttf") format("truetype");font-weight:100 900;font-display:swap}
@font-face{font-family:Assistant;src:url("../fonts/Assistant-Variable.ttf") format("truetype");font-weight:200 800;font-display:swap}
@font-face{font-family:"Frank Ruhl Libre";src:url("../fonts/FrankRuhlLibre-Variable.ttf") format("truetype");font-weight:300 900;font-display:swap}
@font-face{font-family:"Suez One";src:url("../fonts/SuezOne-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:Karantina;src:url("../fonts/Karantina-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:Karantina;src:url("../fonts/Karantina-Bold.ttf") format("truetype");font-weight:700;font-display:swap}
@font-face{font-family:"Secular One";src:url("../fonts/SecularOne-Regular.ttf") format("truetype");font-weight:400;font-display:swap}

:root{
  --ink:#1C1814;
  --deep:#120F0D;
  --elev:#26211C;
  --elev-2:#2E2823;
  --cream:#F7F1E8;
  --cream-dim:#C4B8A8;
  --clay:#8A3B16;
  --clay-bright:#D9733F;
  --clay-hot:#E38B5A;
  --line:rgba(247,241,232,.12);
  --line-strong:rgba(247,241,232,.2);
  --shadow:0 24px 60px rgba(0,0,0,.45), 0 8px 20px rgba(0,0,0,.28);
  --shadow-lg:0 40px 90px rgba(0,0,0,.5), 0 16px 32px rgba(0,0,0,.3);
  --focus:#D9733F;
  --ok:#8FCB9B;
  --r-sm:8px;
  --r-md:16px;
  --r-lg:24px;
  --r-phone:28px;
  --max:80rem;
  --gutter:1.25rem;
  --header-h:4.25rem;
  --text:1.125rem;
  --leading:1.7;
  --ease:cubic-bezier(.22,1,.36,1);
  --ink-soft:#1C1814;
  --paper:var(--elev);
  --foam:var(--cream);
  --clay-dark:#8A3B16;
  --clay-soft:#D9733F;
  --muted:var(--cream-dim);
  --muted-on-dark:var(--cream-dim);
  --sand:var(--elev-2);
  --line-on-dark:var(--line);
}

*,*::before,*::after{box-sizing:border-box}

html{font-size:100%;scroll-behavior:smooth;color-scheme:dark;overflow-x:clip}
html.a11y-pause,html.a11y-pause *{scroll-behavior:auto!important}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
html.a11y-pause *,html.a11y-pause *::before,html.a11y-pause *::after{animation:none!important;transition:none!important}
html.a11y-text-lg{font-size:118.75%}
html.a11y-text-xl{font-size:137.5%}

body{
  margin:0;
  background:var(--deep);
  color:var(--cream);
  font-family:Assistant,"Segoe UI","Arial Hebrew",Arial,sans-serif;
  font-size:var(--text);
  line-height:var(--leading);
  min-height:100vh;
  overflow-x:clip;
}

img,svg{max-width:100%;height:auto}
img{display:block}
a{color:var(--clay-bright);text-underline-offset:.18em;text-decoration-thickness:.07em}
a:hover{color:var(--clay-hot)}
html.a11y-underline a{text-decoration:underline}

:focus{outline:none}
:focus-visible{outline:2px solid var(--focus);outline-offset:3px}

.skip-link{
  position:absolute;inset-inline-start:.75rem;top:-4rem;z-index:2000;
  background:var(--cream);color:var(--ink);padding:.6rem 1rem;
  text-decoration:none;font-weight:700;border-radius:0 0 var(--r-sm) var(--r-sm);
}
.skip-link:focus{top:0;color:var(--ink);outline-color:var(--clay-bright)}

.wrap{width:min(100% - 2.5rem, var(--max));margin-inline:auto}
@media(min-width:880px){.wrap{width:min(100% - 4rem, var(--max))}}
.grid-12{display:grid;grid-template-columns:repeat(12,1fr);gap:1.25rem}
@media(min-width:880px){.grid-12{gap:1.5rem}}

/* ===== Header / glassy nav ===== */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(18,15,13,.72);
  backdrop-filter:blur(22px) saturate(1.25);
  -webkit-backdrop-filter:blur(22px) saturate(1.25);
  border-bottom:1px solid var(--line);
}
.header-inner{
  display:flex;align-items:center;flex-wrap:wrap;gap:.7rem;
  min-height:var(--header-h);padding:.45rem 0;
}
.logo{
  display:flex;align-items:center;gap:.65rem;
  text-decoration:none;color:var(--cream);
  font-family:Heebo,Assistant,sans-serif;
  font-weight:800;font-size:1.12rem;letter-spacing:-.03em;
  margin-inline-end:auto;line-height:1;
}
.logo:hover{color:var(--cream)}
.logo-mark{
  width:1.62rem;height:1.62rem;flex:0 0 auto;
  padding:6px;
  box-sizing:content-box;
  background:#F7F1E8;
  border-radius:12px;
  box-shadow:none;
}
.logo-dot{
  display:inline-block;width:.28em;height:.28em;border-radius:50%;
  background:var(--clay-bright);margin-inline-start:.12em;
  vertical-align:middle;transform:translateY(-.05em);
}

.nav-toggle,.a11y-open{
  appearance:none;border:1px solid var(--line-strong);background:transparent;
  color:var(--cream);font:inherit;font-weight:700;font-size:.92rem;
  padding:.4rem .7rem;border-radius:999px;cursor:pointer;
}
.nav-toggle[aria-expanded="true"],
.a11y-open[aria-expanded="true"]{border-color:var(--cream);background:rgba(247,241,232,.06)}
.a11y-open:hover,.nav-toggle:hover{background:rgba(247,241,232,.08)}

.site-nav{display:none}
.site-nav.is-open{
  display:block;position:absolute;inset-inline:0;top:100%;
  background:rgba(18,15,13,.96);
  backdrop-filter:blur(20px);
  border-bottom:1px solid var(--line);
}
.site-nav ul{
  list-style:none;margin:0 auto;padding:.6rem 0 1rem;
  display:flex;flex-direction:column;
  width:min(100% - 2.5rem,var(--max));
}
.site-nav a{
  color:var(--cream);text-decoration:none;font-weight:600;
  display:inline-block;padding:.55rem 0;font-size:1.05rem;
}
.site-nav a:hover{color:var(--clay-hot)}

.btn-whatsapp-header{
  display:inline-flex;align-items:center;gap:.35rem;
  text-decoration:none;color:var(--ink);font-weight:700;font-size:.92rem;
  background:var(--cream);padding:.42rem .85rem;border-radius:999px;
}
.btn-whatsapp-header svg{width:1.05rem;height:1.05rem}
.btn-whatsapp-header:hover{background:#fff;color:var(--ink)}

@media(min-width:1100px){
  .nav-toggle{display:none}
  .site-nav{display:block;position:static;border:0;background:transparent;backdrop-filter:none}
  .site-nav ul{flex-direction:row;align-items:center;gap:1.4rem;padding:0;width:auto;margin:0}
  .site-nav a{padding:.15rem 0;font-size:.98rem}
}

/* a11y panel */
.a11y-panel{display:none;background:var(--elev);border-bottom:1px solid var(--line);padding:1.1rem 0 1.3rem}
.a11y-panel.is-open{display:block}
.a11y-panel h2{font-family:Heebo,sans-serif;font-size:1.2rem;margin:0 0 .7rem;font-weight:800;letter-spacing:-.02em}
.a11y-grid{display:flex;flex-wrap:wrap;gap:.45rem}
.a11y-grid button{
  appearance:none;font:inherit;font-weight:700;font-size:.92rem;
  background:transparent;color:var(--cream);border:1px solid var(--line-strong);
  padding:.4rem .75rem;cursor:pointer;border-radius:999px;
}
.a11y-grid button[aria-pressed="true"]{background:var(--cream);color:var(--ink);border-color:var(--cream)}

/* ===== Buttons ===== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  font-family:Heebo,Assistant,sans-serif;font-weight:800;
  text-decoration:none;padding:.8rem 1.25rem;border-radius:999px;
  border:1px solid transparent;line-height:1.2;letter-spacing:-.01em;
  transition:transform .35s var(--ease), background .25s var(--ease), box-shadow .35s var(--ease);
}
.btn:hover{color:inherit}
.btn-primary,.btn-invert{
  background:var(--cream);color:var(--ink);border-color:var(--cream);
}
.btn-primary:hover,.btn-invert:hover{background:#fff;color:var(--ink);box-shadow:0 8px 24px rgba(0,0,0,.25)}
.btn-secondary,.btn-ghost-light{
  background:transparent;color:var(--cream);border-color:var(--line-strong);
}
.btn-secondary:hover,.btn-ghost-light:hover{background:rgba(247,241,232,.08);color:var(--cream);border-color:var(--cream)}
.btn-clay{background:var(--clay-bright);color:var(--ink);border-color:var(--clay-bright)}
.btn-clay:hover{background:var(--clay-hot);color:var(--ink)}
.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.5rem 0 0}

/* ===== Hero ===== */
.hero{
  position:relative;
  padding:3.2rem 0 3.5rem;
  overflow:visible;
  background:
    radial-gradient(ellipse 70% 60% at 80% -10%, rgba(217,115,63,.11), transparent 58%),
    radial-gradient(ellipse 50% 40% at 0% 80%, rgba(247,241,232,.04), transparent 50%),
    var(--deep);
}
.hero-layout{
  display:grid;gap:2.5rem;align-items:center;
}
@media(min-width:960px){
  .hero{padding:4.5rem 0 5.5rem}
  .hero-layout{grid-template-columns:minmax(0,5.5fr) minmax(0,6.5fr);gap:3.5rem;min-height:68vh}
}
.kicker{
  font-family:Heebo,sans-serif;font-weight:700;font-size:.8rem;
  letter-spacing:.12em;color:var(--clay-bright);margin:0 0 1.1rem;
}
.hero h1{
  font-family:Heebo,sans-serif;font-weight:900;
  font-size:clamp(2.5rem,7.2vw,5.6rem);
  line-height:1.04;letter-spacing:-.045em;
  margin:0 0 1.15rem;color:var(--cream);
  max-width:12ch;
}
.hero .lede{
  font-size:1.2rem;line-height:1.55;max-width:30rem;margin:0;color:var(--cream-dim);
}
.hero-meta{
  list-style:none;margin:1.4rem 0 0;padding:0;
  display:flex;flex-wrap:wrap;gap:.15rem .15rem;
  color:var(--cream-dim);font-size:.95rem;font-weight:600;
}
.hero-meta li{margin:0;padding:0;border:0}
.hero-meta li:not(:last-child)::after{content:" · ";color:rgba(247,241,232,.35);font-weight:500}

/* Device stage */
.hero-stage{position:relative;min-height:22rem}
@media(min-width:960px){.hero-stage{min-height:34rem;padding:0 0 2.2rem}}
.hero-stage .device-laptop{width:100%;max-width:100%}

.device{
  background:var(--elev);
  border:1px solid var(--line);
  box-shadow:var(--shadow-lg);
  overflow:hidden;
}
.device img{width:100%;height:auto;display:block}
.device-chrome{
  display:flex;align-items:center;gap:.6rem;
  padding:.62rem .85rem;
  min-height:2.4rem;
  background:#161310;
  border-bottom:1px solid var(--line);
}
.device-chrome .dots{display:flex;gap:.32rem}
.device-chrome .dots i{
  width:8px;height:8px;border-radius:50%;
  background:rgba(247,241,232,.48);display:block;
}
.device-chrome .url{
  font-size:.72rem;font-weight:600;color:var(--cream-dim);
  letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.device-laptop{
  border-radius:var(--r-lg);
  transform:none;
}
.device-laptop img{aspect-ratio:16/10;object-fit:cover;object-position:top}
.device-phone{
  border-radius:var(--r-phone);
  width:min(36%, 14.2rem);
  position:absolute;
  inset-inline-start:auto;
  inset-inline-end:-1rem;
  bottom:-2rem;
  box-shadow:var(--shadow-lg);
  border:2px solid rgba(247,241,232,.16);
  z-index:2;
  background:#0a0908;
}
.device-phone img{aspect-ratio:390/844;object-fit:cover;object-position:top;border-radius:calc(var(--r-phone) - 4px)}
@media(max-width:959px){
  .hero{padding:1.55rem 0 1.7rem}
  .hero h1{font-size:clamp(2.15rem,11vw,2.7rem)}
  .hero .lede{font-size:1.08rem}
  .device-phone{display:none}
  .hero-stage{min-height:auto;margin-top:1.2rem}
  .device-laptop img{aspect-ratio:16/9}
}
.hero-stage .device-laptop{transition:transform .7s var(--ease)}
.hero-stage:hover .device-laptop{transform:translateY(-4px)}
@media (prefers-reduced-motion:reduce){
  .hero-stage:hover .device-laptop{transform:none}
}

/* ===== Common sections ===== */
.section{padding:4.5rem 0}
@media(min-width:880px){.section{padding:6rem 0}}
.section-head{margin:0 0 2.2rem;max-width:40rem}
.section-head.split{
  max-width:none;display:grid;gap:1rem 3rem;
}
@media(min-width:800px){
  .section-head.split{grid-template-columns:1.15fr .85fr;align-items:end;margin-bottom:2.6rem}
}
.section h2{
  font-family:Heebo,sans-serif;font-weight:800;
  font-size:clamp(1.85rem,3.6vw,3rem);letter-spacing:-.04em;line-height:1.12;margin:0;color:var(--cream);
}
.section-intro{margin:0;color:var(--cream-dim);font-size:1.12rem}
.subhead{
  font-family:Heebo,sans-serif;font-weight:800;
  font-size:clamp(1.4rem,2.4vw,1.85rem);margin:3.2rem 0 .4rem;letter-spacing:-.03em;
}

/* reveal */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
html.a11y-pause .reveal{opacity:1;transform:none;transition:none}

/* ===== Showcase ===== */
.showcase{padding-bottom:2rem}
.show-toolbar{
  display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.2rem;margin:0 0 1.4rem;
}
.work-filters{display:flex;flex-wrap:wrap;gap:.4rem;margin-inline-end:auto}
.work-filters button{
  appearance:none;background:transparent;border:1px solid var(--line);
  color:var(--cream-dim);font:inherit;font-weight:700;font-size:.92rem;
  padding:.35rem .8rem;border-radius:999px;cursor:pointer;
}
.work-filters button[aria-pressed="true"],
.work-filters button:hover{color:var(--ink);background:var(--cream);border-color:var(--cream)}
.show-nav{display:flex;gap:.4rem}
.show-nav button{
  appearance:none;width:2.4rem;height:2.4rem;border-radius:50%;
  border:1px solid var(--line-strong);background:transparent;color:var(--cream);
  cursor:pointer;font-size:1.1rem;line-height:1;
}
.show-nav button:hover{background:rgba(247,241,232,.08)}

.show-viewport{overflow-x:auto;overflow-y:hidden;width:100%;max-width:100%;-webkit-overflow-scrolling:touch}
.show-track{
  display:flex;gap:1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;
  width:100%;max-width:100%;box-sizing:border-box;
  padding:.6rem max(1.25rem, calc((100% - 80rem) / 2 + 2rem)) 2.4rem;
  scrollbar-width:thin;scrollbar-color:rgba(247,241,232,.25) transparent;
  -webkit-overflow-scrolling:touch;
}
.show-card{
  flex:0 0 min(82vw, 38rem);
  scroll-snap-align:start;
  text-decoration:none;color:var(--cream);
  transition:transform .5s var(--ease);
}
.show-card[hidden]{display:none}
@media(min-width:880px){.show-card{flex-basis:34rem}}
.show-card .device{border-radius:var(--r-md);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.show-card:hover .device{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.show-card .device img{aspect-ratio:16/10;object-fit:cover;object-position:top}
.show-card .cap{padding:.85rem .15rem 0}
.show-card h3{font-family:Heebo,sans-serif;font-weight:800;font-size:1.12rem;margin:0 0 .15rem;letter-spacing:-.02em}
.show-card p{margin:0;color:var(--cream-dim);font-size:.98rem}
.badge{
  display:inline-block;font-family:Heebo,sans-serif;font-size:.7rem;font-weight:800;
  letter-spacing:.08em;color:var(--clay-bright);margin:0 0 .2rem;
}
@media (prefers-reduced-motion:reduce){
  .show-card:hover .device{transform:none}
}

/* CV + posts */
.cv-row,.posts-row{
  display:grid;gap:1.25rem;
}
@media(min-width:800px){
  .cv-row{grid-template-columns:repeat(4,1fr);gap:1.35rem}
  .posts-row{grid-template-columns:repeat(3,1fr);gap:1.5rem}
}
@media(max-width:799px){
  .cv-row{grid-template-columns:1fr 1fr}
}
.cv-card,.post-card{
  text-decoration:none;color:var(--cream);display:block;
}
.cv-frame,.phone-frame{
  background:var(--elev);border:1px solid var(--line);box-shadow:var(--shadow);
  overflow:hidden;
}
.cv-frame{border-radius:var(--r-md);padding:.7rem;background:#1a1714}
.cv-frame img{width:100%;height:auto;border-radius:6px;background:#fbf8f2}
.phone-frame{
  border-radius:var(--r-phone);padding:.55rem .55rem 0;background:#0a0908;
  border:2px solid rgba(247,241,232,.14);
}
.ig-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;border-radius:0 0 20px 20px;overflow:hidden}
.ig-grid img{width:100%;aspect-ratio:1;object-fit:cover}
.cv-card h3,.post-card h3{font-family:Heebo,sans-serif;font-weight:800;font-size:1.05rem;margin:.8rem 0 .15rem;letter-spacing:-.02em}
.cv-card p,.post-card p,.post-card figcaption{margin:0;color:var(--cream-dim);font-size:.95rem}
.post-card figcaption a{font-weight:700}

/* ===== Bento services ===== */
.bento{
  display:grid;gap:1rem;
  grid-template-columns:1fr;
}
@media(min-width:800px){
  .bento{grid-template-columns:repeat(12,1fr);grid-auto-rows:minmax(14rem,auto);gap:1.15rem}
  .bento-item.is-lg{grid-column:span 7;grid-row:span 2}
  .bento-item.is-md{grid-column:span 5}
  .bento-item.is-wide{grid-column:span 12}
}
.bento-item{
  background:var(--elev);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:1.4rem 1.35rem 1.45rem;overflow:hidden;position:relative;
  display:flex;flex-direction:column;min-height:14rem;
}
.bento-item h3{font-family:Heebo,sans-serif;font-weight:800;font-size:1.45rem;margin:0 0 .4rem;letter-spacing:-.03em}
.bento-item p{margin:0;color:var(--cream-dim)}
.bento-item .price-amount{
  display:block;font-family:Heebo,sans-serif;font-weight:800;
  font-size:1.45rem;letter-spacing:-.03em;color:var(--cream);margin:.9rem 0 .15rem;
  unicode-bidi:isolate;
}
.price-note{display:block;color:var(--cream-dim);font-size:.92rem}
.bento-visual{margin:1.1rem -1.35rem -1.45rem;overflow:hidden;flex:1;display:flex;min-height:11rem}
.bento-visual img{width:100%;height:100%;min-height:11rem;aspect-ratio:16/9;object-fit:cover;object-position:top;display:block}
.bento-item.is-lg .bento-visual{min-height:16rem}
.bento-item.is-lg .bento-visual img{aspect-ratio:auto;min-height:16rem}

/* ===== Pricing comparison ===== */
.price-grid{
  display:grid;gap:1rem;
}
@media(min-width:880px){.price-grid{grid-template-columns:repeat(3,1fr);gap:1.15rem;align-items:stretch}}
.price-card{
  background:var(--elev);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:1.6rem 1.4rem 1.5rem;display:flex;flex-direction:column;
}
.price-card.is-featured{
  background:var(--elev-2);
  border-color:rgba(217,115,63,.55);
  box-shadow:0 0 0 1px rgba(217,115,63,.2), var(--shadow);
}
.plan-label{
  font-family:Heebo,sans-serif;font-weight:700;font-size:.75rem;letter-spacing:.1em;
  color:var(--clay-bright);margin:0 0 .55rem;
}
.price-card h3{font-family:Heebo,sans-serif;font-weight:800;font-size:1.4rem;margin:0 0 .35rem;letter-spacing:-.03em}
.price-card .price{margin:0 0 1rem}
.price-card .price-amount{font-size:1.7rem}
.price-card ul{list-style:none;margin:0 0 1.3rem;padding:0;flex:1}
.price-card li{
  position:relative;padding:.4rem 0 .4rem 0;padding-inline-start:1.3rem;
  color:var(--cream-dim);border-top:1px solid var(--line);
}
.price-card li::before{
  content:"";position:absolute;inset-inline-start:0;top:50%;transform:translateY(-50%);
  width:.5rem;height:.5rem;border-radius:50%;background:var(--clay-bright);
}
.price-card .btn{width:100%;text-align:center}

/* ===== Process ===== */
.steps{
  display:grid;gap:0;border-top:1px solid var(--line);
}
@media(min-width:800px){.steps{grid-template-columns:repeat(3,1fr)}}
.step{padding:1.6rem 0;border-bottom:1px solid var(--line)}
@media(min-width:800px){
  .step{padding:1.8rem 1.6rem 0 0;border-bottom:0;border-inline-end:1px solid var(--line)}
  .step:last-child{border-inline-end:0;padding-inline-end:0}
}
.step-num{display:block;font-family:Heebo,sans-serif;font-weight:800;color:var(--clay-bright);font-size:.85rem;letter-spacing:.08em;margin:0 0 .45rem}
.step h3{font-family:Heebo,sans-serif;font-weight:800;font-size:1.25rem;margin:0 0 .4rem;letter-spacing:-.02em}
.step p{margin:0;color:var(--cream-dim)}

/* included list */
.include-list{display:grid;gap:0;border-top:1px solid var(--line)}
@media(min-width:800px){.include-list{grid-template-columns:1fr 1fr}}
.include{padding:1.15rem 0;border-bottom:1px solid var(--line)}
@media(min-width:800px){.include{padding:1.2rem 1.5rem 1.2rem 0}}
.include h3{font-family:Heebo,sans-serif;font-size:1.05rem;margin:0 0 .25rem;letter-spacing:-.02em}
.include p{margin:0;color:var(--cream-dim)}

/* ===== Q&A ===== */
.qa{display:grid;gap:0;border-top:1px solid var(--line)}
@media(min-width:860px){.qa{grid-template-columns:1fr 1fr;column-gap:3rem}}
.qa-item{padding:1.25rem 0;border-bottom:1px solid var(--line)}
.qa-item h3{font-family:Heebo,sans-serif;font-weight:800;font-size:1.12rem;margin:0 0 .35rem;letter-spacing:-.02em}
.qa-item p{margin:0;color:var(--cream-dim)}

/* ===== CTA / Contact ===== */
.cta-band{
  padding:4.5rem 0 3rem;
  background:
    radial-gradient(ellipse 80% 80% at 50% 0%, rgba(217,115,63,.12), transparent 60%),
    var(--ink);
  border-top:1px solid var(--line);
  position:relative;
}
.cta-band::after{
  content:"";position:absolute;inset-inline:0;bottom:0;height:4px;background:var(--clay-bright);
}
.cta-band h2{
  font-family:Heebo,sans-serif;font-weight:900;
  font-size:clamp(2rem,4.8vw,3.6rem);letter-spacing:-.04em;line-height:1.1;
  margin:0 0 1rem;max-width:16ch;
}
.cta-phone,.contact-phone{
  font-family:Heebo,sans-serif;font-weight:800;
  font-size:clamp(1.8rem,3.6vw,2.6rem);
  color:var(--cream);text-decoration:none;letter-spacing:-.03em;display:inline-block;line-height:1.1;
}
.cta-phone:hover,.contact-phone:hover{color:var(--clay-hot)}

.contact-grid{display:grid;gap:2.2rem}
@media(min-width:900px){.contact-grid{grid-template-columns:1fr 1fr;gap:4rem;align-items:start}}
.contact-box{
  background:var(--elev);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:1.5rem 1.4rem 1.6rem;
}
.contact-box form > div{margin:0 0 1rem}
.contact-box label{display:block;font-weight:700;font-family:Heebo,sans-serif;font-size:.92rem;margin:0 0 .3rem}
.contact-box input,.contact-box select,.contact-box textarea{
  width:100%;font:inherit;color:var(--cream);background:rgba(0,0,0,.25);
  border:1px solid var(--line-strong);border-radius:var(--r-sm);
  padding:.65rem .75rem;
}
.contact-box textarea{min-height:8rem;resize:vertical}
.placeholder-note{
  background:rgba(217,115,63,.12);border-inline-start:3px solid var(--clay-bright);
  padding:.65rem .85rem;margin:0 0 1.1rem;color:var(--cream);font-size:.95rem;
  border-start-end-radius:var(--r-sm);border-end-end-radius:var(--r-sm);
}
.form-status{margin:.8rem 0 0;color:var(--ok);font-weight:700}
.form-status.is-pending{color:var(--cream)}
.form-status.is-error{color:#E8A598}
.form-status .wa-fallback{display:inline-block;margin-top:.35rem}
.hp-field{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ===== Footer ===== */
.site-footer{
  border-top:1px solid var(--line);padding:2.6rem 0 1.5rem;
  background:var(--deep);color:var(--cream-dim);
}
.footer-grid{display:grid;gap:1.6rem;margin-bottom:2rem}
@media(min-width:800px){.footer-grid{grid-template-columns:1.4fr repeat(3,.7fr);gap:2rem}}
.footer-brand .logo{margin:0}
.footer-brand p{margin:.8rem 0 0;color:var(--cream-dim);max-width:22rem}
.footer-heading{font-family:Heebo,sans-serif;font-weight:800;margin:0 0 .5rem;letter-spacing:-.02em;color:var(--cream)}
.footer-list{list-style:none;margin:0;padding:0}
.footer-list a{color:var(--cream-dim);text-decoration:none;font-weight:600}
.footer-list a:hover{color:var(--cream);text-decoration:underline}
.footer-bottom{
  border-top:1px solid var(--line);padding-top:1.1rem;
  display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;justify-content:space-between;
  font-size:.95rem;
}
.footer-bottom p{margin:0}
.footer-bottom a{color:var(--cream)}

/* ===== Legal / inner ===== */
.legal-page{padding:2.8rem 0 4.5rem}
.legal-page .wrap{max-width:46rem;width:min(100% - 2.5rem,46rem)}
.legal-page h1{
  font-family:Heebo,sans-serif;font-weight:800;
  font-size:clamp(2rem,4.2vw,3rem);letter-spacing:-.04em;line-height:1.15;margin:0 0 .5rem;
}
.legal-page .lead,.legal-page > .wrap > p:first-of-type{font-size:1.15rem;color:var(--cream-dim)}
.legal-page h2{font-family:Heebo,sans-serif;font-size:1.35rem;margin:2rem 0 .45rem;letter-spacing:-.03em;font-weight:800}
.page-kicker{color:var(--clay-bright);font-family:Heebo,sans-serif;font-weight:700;font-size:.82rem;letter-spacing:.1em;margin:0 0 .7rem}

.demo-banner{background:var(--cream);color:var(--ink);text-align:center;padding:.55rem 1rem;font-weight:700;font-size:.95rem}
.demo-banner a{color:var(--ink)}
.cv-paper,.cv-sheet{
  background:#FBF8F2;color:#1C1814;border:1px solid rgba(28,24,20,.12);
  padding:1.6rem 1.3rem;max-width:50rem;margin:0 auto 2rem;border-radius:var(--r-md);
}
.cv-before{font-size:1rem;line-height:1.55;font-family:"Segoe UI",Arial,sans-serif;background:#fff}
.cv-after,.cv-sheet{font-size:1.05rem}
.cv-after h1,.cv-sheet h1{
  font-family:"Frank Ruhl Libre",serif;font-size:2.2rem;margin:0 0 .1rem;
  letter-spacing:-.03em;font-weight:700;line-height:1.1;color:#1C1814;
}
.cv-after .role,.cv-sheet .role{color:var(--clay);font-weight:700;margin:0 0 .35rem;font-family:Heebo,sans-serif}
.cv-after h2,.cv-sheet h2{
  font-family:Heebo,sans-serif;font-size:.95rem;letter-spacing:.08em;
  border-bottom:1px solid #1C1814;margin:1.4rem 0 .5rem;padding-bottom:.2rem;
  font-weight:800;color:#1C1814;
}
.cv-meta{color:#4a453f;margin:0 0 .9rem}
.cv-nav{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;margin:0 0 1.4rem}
.cv-sheet a,.cv-paper a{color:var(--clay)}
.cv-nav a{color:var(--clay-bright)}
.cv-nav a:hover{color:var(--clay-hot)}

.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
input::placeholder,textarea::placeholder,select::placeholder{color:#A89C8C;opacity:1}

@media(max-width:480px){
  .header-inner{gap:.35rem}
  .logo{font-size:1rem;gap:.4rem}
  .btn-whatsapp-header,.nav-toggle,.a11y-open{font-size:.85rem;padding:.35rem .55rem}
}

/* ===== High contrast ===== */
html.a11y-contrast{
  --ink:#000;--deep:#000;--elev:#000;--elev-2:#000;
  --cream:#fff;--cream-dim:#fff;--clay:#000;--clay-bright:#fff;--clay-hot:#fff;
  --line:#fff;--line-strong:#fff;--focus:#fff;--ok:#fff;
  --ink-soft:#000;--paper:#000;--foam:#fff;--clay-dark:#000;--clay-soft:#fff;
  --muted:#fff;--muted-on-dark:#fff;--sand:#000;--line-on-dark:#fff;
}
html.a11y-contrast body{background:#000;color:#fff}
html.a11y-contrast a{color:#fff;text-decoration:underline}
html.a11y-contrast .site-header,
html.a11y-contrast .a11y-panel,
html.a11y-contrast .site-nav,
html.a11y-contrast .hero,
html.a11y-contrast .cta-band,
html.a11y-contrast .site-footer,
html.a11y-contrast .contact-box,
html.a11y-contrast .price-card,
html.a11y-contrast .bento-item,
html.a11y-contrast .device,
html.a11y-contrast .cv-frame,
html.a11y-contrast .phone-frame{
  background:#000!important;color:#fff!important;border-color:#fff!important;box-shadow:none!important;backdrop-filter:none!important
}
html.a11y-contrast .logo,
html.a11y-contrast .site-nav a,
html.a11y-contrast .nav-toggle,
html.a11y-contrast .a11y-open,
html.a11y-contrast .hero h1,
html.a11y-contrast .hero .lede,
html.a11y-contrast .kicker,
html.a11y-contrast .cta-band h2,
html.a11y-contrast .footer-heading,
html.a11y-contrast .site-footer a,
html.a11y-contrast .contact-phone,
html.a11y-contrast .cta-phone,
html.a11y-contrast .price-amount,
html.a11y-contrast .badge,
html.a11y-contrast .plan-label,
html.a11y-contrast .step-num{color:#fff!important}
html.a11y-contrast .btn,
html.a11y-contrast .btn-primary,
html.a11y-contrast .btn-invert,
html.a11y-contrast .btn-clay,
html.a11y-contrast .btn-whatsapp-header{
  background:#fff!important;color:#000!important;border-color:#fff!important
}
html.a11y-contrast .btn-secondary,
html.a11y-contrast .btn-ghost-light{
  background:#000!important;color:#fff!important;border-color:#fff!important
}
html.a11y-contrast .a11y-grid button{border-color:#fff;color:#fff;background:#000}
html.a11y-contrast .a11y-grid button[aria-pressed="true"]{background:#fff;color:#000}
html.a11y-contrast :focus-visible{outline:3px solid #fff;outline-offset:3px}
html.a11y-contrast .hero{background:#000!important}
html.a11y-contrast .cta-band::after{background:#fff}
html.a11y-contrast .logo-dot{background:#fff}
html.a11y-contrast .logo-mark{background:#fff;box-shadow:none}
html.a11y-contrast .work-filters button[aria-pressed="true"]{background:#fff;color:#000}
html.a11y-contrast .cv-sheet,html.a11y-contrast .cv-paper{background:#fff;color:#000}
