
:root{--paper:#f2efe8;--ink:#171714;--wine:#692d35;--muted:#766f66;--line:rgba(23,23,20,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;margin:0}img{display:block;width:100%;height:100%;object-fit:cover}
.progress{position:fixed;z-index:120;top:0;left:0;height:2px;background:var(--wine);width:0}
header{position:fixed;z-index:110;top:2px;left:0;right:0;height:74px;display:flex;align-items:center;padding:0 4vw;background:rgba(242,239,232,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(23,23,20,.08)}
.brand{font:24px Georgia,serif;text-decoration:none;color:var(--ink);margin-right:auto}
nav{display:flex;align-items:center;gap:28px}nav a{font-size:11px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--ink)}
.contact-now{padding:11px 17px;border:1px solid var(--ink);border-radius:99px;letter-spacing:.04em!important;text-transform:none!important;font-size:12px!important}
.hero{min-height:92vh;padding:74px 0 0;display:grid;grid-template-columns:1fr 1.08fr;align-items:stretch}
.hero-copy{padding:10vh 5vw 8vh 6vw;display:flex;flex-direction:column;justify-content:center}.hero h1{font-size:clamp(70px,7.4vw,124px);line-height:.83;max-width:780px}
.hero .sub{font:clamp(24px,2.2vw,38px)/1.05 Georgia,serif;max-width:620px;margin:34px 0 16px}.hero .promise{font-size:15px;line-height:1.5;max-width:510px;color:var(--muted)}
.hero-actions{display:flex;gap:28px;align-items:center;margin-top:38px}.primary{display:inline-block;background:var(--ink);color:#fff;text-decoration:none;padding:14px 20px;border-radius:99px;font-size:13px}.secondary{color:var(--ink);text-decoration:none;font-size:13px;border-bottom:1px solid var(--ink);padding-bottom:3px}
.hero-image{min-height:700px;overflow:hidden}.hero-image img{object-position:center}
.intro-strip{padding:34px 5vw;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.intro-strip p{margin:0;font:24px/1.25 Georgia,serif}.intro-strip span{font-size:13px;line-height:1.5;color:var(--muted);max-width:500px}
.question{min-height:74vh;padding:105px 5vw 55px;display:flex;align-items:center;border-bottom:1px solid rgba(23,23,20,.06)}
.q-inner{width:min(1260px,100%);margin:auto;display:grid;grid-template-columns:minmax(480px,1.15fr) minmax(330px,.72fr);gap:7vw;align-items:center}
.q-inner.reverse{grid-template-columns:minmax(330px,.72fr) minmax(480px,1.15fr)}.q-inner.reverse .q-copy{order:2}.q-inner.reverse .q-image{order:1}
.q-copy{max-width:780px}.question h2{font-size:clamp(52px,5vw,82px);line-height:.9}.helper{margin:20px 0 23px;color:var(--muted);font-size:13px}
.choices{display:grid;grid-template-columns:1fr 1fr;column-gap:42px;border-top:1px solid var(--line)}
.choice{appearance:none;background:none;border:0;border-bottom:1px solid var(--line);padding:14px 1px;text-align:left;font:13px Arial;cursor:pointer;color:var(--ink)}
.choice:before{content:"";display:inline-block;width:7px;height:7px;border:1px solid currentColor;border-radius:50%;margin-right:13px;transition:.2s}.choice[aria-pressed=true]{color:var(--wine);transform:translateX(3px)}.choice[aria-pressed=true]:before{background:var(--wine);border-color:var(--wine)}
.actions{display:flex;gap:24px;align-items:center;margin-top:25px}.next,.text-link{border:0;background:none;padding:0;font-weight:600;color:var(--ink);text-decoration:none;cursor:pointer;font-size:12px}.text-link{font-weight:400;color:var(--muted)}
.q-image{height:55vh;min-height:410px;overflow:hidden}.q-image.wide{height:60vh}.q-image img{transition:transform 1.2s ease}.question:hover .q-image img{transform:scale(1.015)}
.q5{background:var(--ink);color:var(--paper);border:0}.q5 .choice{color:var(--paper);border-color:rgba(242,239,232,.17)}.q5 .helper,.q5 .text-link{color:#bdb5a9}.q5 .choices{border-color:rgba(242,239,232,.17)}.q5 .next{color:var(--paper)}
textarea{width:100%;height:110px;background:transparent;border:0;border-bottom:1px solid rgba(23,23,20,.3);resize:none;outline:none;font:18px Georgia,serif}.q5 textarea{color:white;border-color:rgba(255,255,255,.25)}
.slider-wrap{margin-top:35px}.slider-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;margin-bottom:13px}.slider{width:100%;accent-color:var(--wine)}.slider:not(.touched){opacity:.5}
.statement{min-height:74vh;background:var(--ink);color:var(--paper);padding:10vh 5vw;display:flex;align-items:center}.statement-inner{width:min(1180px,100%);margin:auto}.statement h2{font-size:clamp(72px,8vw,130px);line-height:.83;max-width:900px}.statement .lead{font-size:16px;color:#bbb4a9;max-width:690px;margin:30px 0 48px;line-height:1.5}
.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;border-top:1px solid rgba(242,239,232,.16);padding-top:25px}.summary h3{font-size:24px}.summary p{color:#aaa398;font-size:13px;line-height:1.5}
.editorial{padding:10vh 5vw}.editorial-inner{width:min(1220px,100%);margin:auto;display:grid;grid-template-columns:.78fr 1fr;gap:8vw;align-items:center}.editorial-image{height:68vh;overflow:hidden}.editorial h2{font-size:clamp(56px,5.8vw,94px);line-height:.88}.editorial-copy{margin-top:30px;max-width:520px;font-size:15px;line-height:1.6}
.process-section{padding:10vh 5vw}.process-grid{width:min(1220px,100%);margin:auto;display:grid;grid-template-columns:1fr .72fr;gap:8vw;align-items:center}.process-grid h2{font-size:clamp(60px,6.5vw,104px);line-height:.87}.process{margin-top:34px;border-top:1px solid var(--line)}.process-row{display:grid;grid-template-columns:170px 1fr;padding:19px 0;border-bottom:1px solid var(--line);gap:25px}.process-row strong{font:25px Georgia,serif;font-weight:400}.process-row span{font-size:13px;line-height:1.5}.process-image{height:68vh;overflow:hidden}.network{font:21px/1.25 Georgia,serif;margin-top:28px}
.contact{min-height:65vh;background:var(--wine);color:white;padding:9vh 5vw;display:flex;align-items:center}.contact-inner{width:min(1180px,100%);margin:auto}.contact h2{font-size:clamp(70px,8vw,128px);line-height:.84}.contact .lead{font:28px Georgia,serif;margin:22px 0 48px}.contact-details{border-top:1px solid rgba(255,255,255,.35);padding-top:22px;display:flex;gap:34px;flex-wrap:wrap;align-items:center;font-size:13px}.contact a{color:white;text-decoration:none}
.quick-contact{position:fixed;right:22px;bottom:20px;z-index:105;background:var(--wine);color:white;text-decoration:none;padding:12px 17px;border-radius:99px;font-size:12px;box-shadow:0 8px 25px rgba(0,0,0,.12)}
.hidden{display:none!important}
@media(max-width:620px){
 header{height:64px;padding:0 18px}.brand{font-size:21px}nav a:not(.contact-now){display:none}.contact-now{padding:9px 12px}
 .hero{display:block;min-height:auto;padding-top:64px}.hero-copy{padding:60px 24px 48px}.hero h1{font-size:17vw}.hero .sub{font-size:8vw;margin-top:28px}.hero-image{height:55svh;min-height:0}
 .intro-strip{grid-template-columns:1fr;padding:28px 24px;gap:12px}.intro-strip p{font-size:22px}
 .question{min-height:auto;padding:72px 24px 0}.q-inner,.q-inner.reverse{display:flex;flex-direction:column;gap:34px}.q-inner.reverse .q-copy,.q-inner.reverse .q-image{order:initial}.question h2{font-size:14vw}.choices{grid-template-columns:1fr}.choice{padding:13px 1px}.q-image,.q-image.wide{width:calc(100% + 48px);height:42svh;min-height:300px;margin-left:-24px}.q5{padding-bottom:0}
 .statement{min-height:auto;padding:85px 24px}.statement h2{font-size:18vw}.summary{grid-template-columns:1fr;gap:25px}
 .editorial,.process-section{padding:75px 24px}.editorial-inner,.process-grid{display:flex;flex-direction:column;gap:40px}.editorial-image,.process-image{width:calc(100% + 48px);margin-left:-24px;height:52svh}.editorial h2{font-size:14vw}.process-grid h2{font-size:15vw}.process-row{grid-template-columns:1fr;gap:5px}
 .contact{min-height:auto;padding:80px 24px 100px}.contact h2{font-size:17vw}.contact-details{display:grid;gap:14px}.quick-contact{right:14px;bottom:14px}
}


/* V4 — desktop rhythm and interaction refinements */
header{padding-inline:clamp(22px,4vw,64px)}
nav{margin-left:24px;gap:clamp(14px,2vw,28px);white-space:nowrap}
.q-inner{grid-template-columns:minmax(0,1.06fr) minmax(280px,.78fr);gap:clamp(42px,7vw,110px)}
.q-inner.reverse{grid-template-columns:minmax(280px,.78fr) minmax(0,1.06fr)}
.q-image{height:clamp(430px,58vh,720px);min-height:0;width:100%;margin:0}
.question:nth-of-type(even) .q-image img{object-position:58% center}
.question:nth-of-type(odd) .q-image img{object-position:42% center}
textarea{height:64px;margin-top:18px;padding:10px 0 8px;line-height:1.35}
textarea::placeholder{color:var(--muted);opacity:.82;font:14px Arial,Helvetica,sans-serif}
textarea:focus::placeholder{color:transparent}
.success-helper{margin-bottom:2px}
.slider-scale{display:grid;grid-template-columns:repeat(10,1fr);margin-top:9px;color:var(--muted);font-size:10px;text-align:center}
.slider-scale span:first-child{text-align:left}.slider-scale span:last-child{text-align:right}
.contact-details{align-items:flex-start}
.contact-details .company,.contact-details .people{display:grid;gap:7px}
.contact-details .company{min-width:300px}
.contact-details .people{min-width:270px}
.contact-details .people a{color:#fff;text-decoration:none}
.back-top{margin-left:auto}

/* Keep full navigation visible on ordinary narrow desktop/browser panes. */
@media (min-width:621px) and (max-width:980px){
 header{height:68px}
 .brand{font-size:21px}
 nav{gap:12px}
 nav a{font-size:9px;letter-spacing:.08em}
 .contact-now{padding:9px 12px!important;font-size:11px!important}
 .hero{padding-top:68px;grid-template-columns:1.05fr .95fr}
 .hero-copy{padding:8vh 4vw 7vh}
 .hero h1{font-size:clamp(48px,7vw,72px)}
 .hero-image{min-height:560px}
 .question{padding:90px 4vw 50px}
 .q-inner,.q-inner.reverse{gap:5vw;grid-template-columns:minmax(0,1.12fr) minmax(220px,.72fr)}
 .q-inner.reverse{grid-template-columns:minmax(220px,.72fr) minmax(0,1.12fr)}
 .question h2{font-size:clamp(42px,5.8vw,60px)}
 .choices{column-gap:22px}
 .choice{font-size:12px}
 .q-image{height:54vh;min-height:390px}
}

/* Mobile only below 620px; image/text remain a deliberate composition above this. */
@media(max-width:620px){
 header{height:64px;padding:0 18px}.brand{font-size:21px}nav a:not(.contact-now){display:none}.contact-now{padding:9px 12px}
 .hero{display:block;min-height:auto;padding-top:64px}.hero-copy{padding:60px 24px 48px}.hero h1{font-size:17vw}.hero .sub{font-size:8vw;margin-top:28px}.hero-image{height:55svh;min-height:0}
 .intro-strip{grid-template-columns:1fr;padding:28px 24px;gap:12px}.intro-strip p{font-size:22px}
 .question{min-height:auto;padding:72px 24px 0}.q-inner,.q-inner.reverse{display:flex;flex-direction:column;gap:34px}.q-inner.reverse .q-copy,.q-inner.reverse .q-image{order:initial}.question h2{font-size:14vw}.choices{grid-template-columns:1fr}.choice{padding:13px 1px}.q-image,.q-image.wide{width:calc(100% + 48px);height:42svh;min-height:300px;margin-left:-24px}.q5{padding-bottom:0}
 .statement{min-height:auto;padding:85px 24px}.statement h2{font-size:18vw}.summary{grid-template-columns:1fr;gap:25px}
 .editorial,.process-section{padding:75px 24px}.editorial-inner,.process-grid{display:flex;flex-direction:column;gap:40px}.editorial-image,.process-image{width:calc(100% + 48px);margin-left:-24px;height:52svh}.editorial h2{font-size:14vw}.process-grid h2{font-size:15vw}.process-row{grid-template-columns:1fr;gap:5px}
 .contact{min-height:auto;padding:80px 24px 100px}.contact h2{font-size:17vw}.contact-details{display:grid;gap:18px}.back-top{margin-left:0}.quick-contact{right:14px;bottom:14px}
}

/* V5 */
.hero .eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 20px;color:var(--muted)}
.together{background:var(--paper);padding:clamp(80px,10vw,150px) clamp(24px,8vw,130px)}
.together-inner{max-width:820px;margin:auto}.together h2{font-family:Georgia,serif;font-size:clamp(48px,7vw,92px);line-height:.95;margin:12px 0 48px}
.lead-form{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:end}
.lead-form label{display:grid;gap:8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.lead-form input{border:0;border-bottom:1px solid #9b978f;background:transparent;padding:11px 0;font:17px Georgia,serif;outline:none}
.lead-form input:focus{border-bottom-color:var(--burgundy)}
.lead-form button{grid-column:1/-1;justify-self:start;border:0;border-radius:999px;background:var(--burgundy);color:white;padding:14px 24px;font-weight:700;cursor:pointer}
.form-note{grid-column:1/-1;color:var(--muted);font-size:12px;margin:0}
.answer-recap{margin-top:34px;border-top:1px solid rgba(255,255,255,.25);padding-top:26px;display:grid;gap:18px}
.answer-recap .recap-row{display:grid;grid-template-columns:minmax(160px,.45fr) 1fr;gap:25px}
.answer-recap dt{opacity:.62}.answer-recap dd{margin:0}
@media(max-width:620px){.lead-form{grid-template-columns:1fr}.together{padding:72px 24px}.answer-recap .recap-row{grid-template-columns:1fr;gap:5px}}

/* V7/V8 corrections */
.hero-context{font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 18px;color:var(--muted)}
.full-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important}
.full-summary>div{padding:24px 28px 24px 0;border-top:1px solid rgba(255,255,255,.16)}
.send-button{background:#692D35!important;color:#fff!important;border:1px solid #692D35!important;box-shadow:none!important;opacity:1!important;min-width:145px}
.send-button:hover{filter:brightness(.92)}.send-button:disabled{opacity:.72!important;cursor:wait}
.submit-frame{position:absolute;width:1px;height:1px;border:0;opacity:0;pointer-events:none}
@media(max-width:700px){.full-summary{grid-template-columns:1fr!important}}

/* V7: deliberate irregular image rhythm */
.question:nth-of-type(4) .q-image{width:34%;transform:translateY(-7%)}
.question:nth-of-type(5) .q-image{width:42%;transform:translateY(8%)}
.question:nth-of-type(6) .q-image{width:31%;transform:translateY(-3%)}
.question:nth-of-type(7) .q-image{width:46%;transform:translateY(10%)}
.question:nth-of-type(8) .q-image{width:36%;transform:translateY(-9%)}
.question:nth-of-type(9) .q-image{width:44%;transform:translateY(5%)}
.question:nth-of-type(10) .q-image{width:32%;transform:translateY(-6%)}
.question:nth-of-type(11) .q-image{width:47%;transform:translateY(7%)}
@media(max-width:760px){.question .q-image{width:100%!important;transform:none!important}}


/* V8.3
   AINOAT VISUAALISET MUUTOKSET V7:ään:
   1) hero- ja kysymyskuvat täyttävät koko osion taustan
   2) tekstiosion takana on ylhäältä alas ulottuva läpikuultava alue
   Typografiaa, tekstikokoja, sisältöjä tai alkuperäisiä sisältöasetteluja ei muuteta.
*/

/* LANDING: alkuperäinen grid ja copy-mitat säilyvät, kuva siirtyy koko hero-osion taustaksi */
.hero{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:var(--paper);
}
.hero-image{
  position:absolute!important;
  inset:74px 0 0 0!important;
  z-index:-2!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
}
.hero-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.hero-copy{
  position:relative;
  z-index:1;
  background:rgba(242,239,232,.48);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
}
/* Läpinäkyvä tekstialue ylhäältä alas, mutta hero-copy:n oma padding ja mitat eivät muutu */
.hero-copy::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:calc(-10vh);
  bottom:calc(-8vh);
  left:0;
  right:0;
  background:rgba(242,239,232,.12);
  pointer-events:none;
}

/* KYSYMYKSET: pidetään V7:n .question/.q-inner/.q-copy mitat ja järjestys.
   Ainoastaan figure irrotetaan taustakuvaksi. */
.question{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.question .q-inner{
  position:relative;
  z-index:1;
}
.question .q-image,
.question .q-image.wide,
.question .q-inner.reverse .q-image{
  position:absolute!important;
  inset:0!important;
  z-index:-2!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  margin:0!important;
  overflow:hidden!important;
  order:initial!important;
}
.question .q-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

/* Tekstin takainen alue koko kysymysosion korkeudelle.
   q-copy:n koko, paikka, fontit ja sisältö pysyvät V7:n mukaisina. */
.question .q-copy{
  position:relative;
  z-index:2;
}
.question .q-copy::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:-105px;
  bottom:-55px;
  left:-5vw;
  right:-5vw;
  background:rgba(242,239,232,.48);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
  pointer-events:none;
}
.question.q5 .q-copy::before{
  background:rgba(23,23,20,.48);
}

/* V7:n reverse-järjestys säilyy tekstille; taustakuva ei enää vie grid-saraketta.
   Lisätään näkymätön toinen grid-alue vain alkuperäisen sommittelun säilyttämiseksi. */
.question .q-inner::after{
  content:"";
  display:block;
  min-width:0;
}
.question .q-inner:not(.reverse) .q-copy{grid-column:1}
.question .q-inner:not(.reverse)::after{grid-column:2}
.question .q-inner.reverse .q-copy{grid-column:2;order:initial}
.question .q-inner.reverse::after{grid-column:1;grid-row:1}

/* Mobiilissa säilytetään V7:n tekstikoot ja copy-padding; vain tausta muuttuu. */
@media(max-width:620px){
  .hero-image{inset:64px 0 0 0!important;height:auto!important}
  .hero-copy::before{
    top:-60px;
    bottom:-48px;
  }
  .question{
    padding-bottom:72px;
  }
  .question .q-inner,
  .question .q-inner.reverse{
    display:flex;
    flex-direction:column;
    gap:34px;
  }
  .question .q-inner::after{display:none}
  .question .q-copy::before{
    top:-72px;
    bottom:-72px;
    left:-24px;
    right:-24px;
    background:rgba(242,239,232,.52);
  }
  .question.q5 .q-copy::before{
    background:rgba(23,23,20,.52);
  }
}


/* V8.4 — käyttäjän pyytämät rajatut muutokset.
   Ei muutoksia teksteihin, tekstikokoihin tai sisältöjen sommitteluun. */

/* Sivut 2–9: kuva koko sivun/osion taustaksi. */
.question{
  min-height:100vh!important;
  background:transparent!important;
}
.question .q-image,
.question .q-image.wide,
.question .q-inner.reverse .q-image{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  transform:none!important;
  margin:0!important;
}
.question .q-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

/* Tavoite määrittää keinot: kuva koko sivun taustaksi.
   Alkuperäinen editorial-inner ja tekstin mitat säilyvät. */
.editorial{
  position:relative;
  min-height:100vh;
  overflow:hidden;
  isolation:isolate;
  display:flex;
  align-items:center;
}
.editorial-inner{
  position:relative;
  z-index:1;
}
.editorial-image{
  position:absolute!important;
  inset:0!important;
  z-index:-2!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
}
.editorial-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.editorial-inner > div{
  position:relative;
  z-index:1;
}
.editorial-inner > div::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:-50vh;
  bottom:-50vh;
  left:-5vw;
  right:-5vw;
  background:rgba(242,239,232,.48);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
  pointer-events:none;
}

/* Etsitään / Rakennetaan / Tehdään: kuva koko sivun taustaksi.
   Tekstisisältö ja sen alkuperäinen koko säilyvät. */
.process-section{
  position:relative;
  min-height:100vh;
  overflow:hidden;
  isolation:isolate;
  display:flex;
  align-items:center;
}
.process-grid{
  position:relative;
  z-index:1;
}
.process-image{
  position:absolute!important;
  inset:0!important;
  z-index:-2!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
}
.process-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.process-grid > div{
  position:relative;
  z-index:1;
}
.process-grid > div::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:-50vh;
  bottom:-50vh;
  left:-5vw;
  right:-5vw;
  background:rgba(242,239,232,.48);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
  pointer-events:none;
}

@media(max-width:620px){
  .question{min-height:100svh!important}
  .editorial,.process-section{min-height:100svh}
}


/* V8.5 — KORJAUS: taustakuva täyttää oikeasti KOKO osion/sivun.
   Ei muutoksia tekstiin, tekstikokoihin tai copy-asetteluun. */

.question,
.editorial,
.process-section{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  min-height:100vh!important;
}

/* Kuvakerros: reunasta reunaan, ylhäältä alas. */
.question .q-image,
.question .q-image.wide,
.question .q-inner .q-image,
.question .q-inner.reverse .q-image,
.editorial .editorial-image,
.editorial-inner .editorial-image,
.process-section .process-image,
.process-grid .process-image{
  position:absolute!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  left:0!important;
  inset:0!important;
  width:100vw!important;
  max-width:none!important;
  height:100%!important;
  min-height:100vh!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  z-index:-1!important;
  overflow:hidden!important;
}

/* Itse kuva täyttää koko kerroksen ilman tyhjää aluetta. */
.question .q-image img,
.question .q-image.wide img,
.editorial .editorial-image img,
.process-section .process-image img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
}

/* Sisältö aina kuvan päällä. */
.question .q-inner,
.editorial .editorial-inner,
.process-section .process-grid{
  position:relative!important;
  z-index:2!important;
}

/* Poista mahdolliset vanhojen layoutien kuvakoot ja grid-varaukset. */
.question .q-inner::after{pointer-events:none!important}

/* Mobiilissa myös aidosti koko viewport/osion kokoinen kuva. */
@media(max-width:620px){
  .question,.editorial,.process-section{
    min-height:100svh!important;
  }
  .question .q-image,
  .question .q-image.wide,
  .question .q-inner .q-image,
  .question .q-inner.reverse .q-image,
  .editorial .editorial-image,
  .process-section .process-image{
    width:100vw!important;
    height:100%!important;
    min-height:100svh!important;
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
    margin:0!important;
  }
}


/* V8.6 — RAKENTEELLINEN TAUSTAKORJAUS.
   Kuvan figure on nyt sectionin suora lapsi, joten se ei enää rajoitu
   q-inner/editorial-inner/process-grid -sisältöalueeseen.
   Teksteihin, tekstikokoihin tai copy-sommitteluun ei ole tehty muutoksia. */

.question,
.editorial,
.process-section{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  min-height:calc(100vh - 74px)!important;
}

/* Todellinen koko sectionin tausta: 0/0/0/0 suhteessa sectioniin */
.question > .q-image,
.editorial > .editorial-image,
.process-section > .process-image{
  position:absolute!important;
  inset:0!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  left:0!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  z-index:-2!important;
  overflow:hidden!important;
}
.question > .q-image img,
.editorial > .editorial-image img,
.process-section > .process-image img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
}

/* Alkuperäiset sisältöwrapperit jäävät sellaisiksi kuin ne olivat. */
.question > .q-inner,
.editorial > .editorial-inner,
.process-section > .process-grid{
  position:relative!important;
  z-index:2!important;
}

/* Transparent-alue edelleen vain tekstin takana, mutta koko sectionin korkeudelle. */
.question .q-copy::before,
.editorial .editorial-inner > div::before,
.process-section .process-grid > div::before{
  top:-100vh!important;
  bottom:-100vh!important;
}

/* Poistetaan vanha näkymätön grid-paikka: kuva ei enää tarvitse saraketta. */
.question .q-inner::after{display:block!important}

/* Mobiilissa sama periaate. */
@media(max-width:620px){
  .question,.editorial,.process-section{
    min-height:calc(100svh - 64px)!important;
  }
  .question > .q-image,
  .editorial > .editorial-image,
  .process-section > .process-image{
    inset:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:100%!important;
    min-height:100%!important;
    transform:none!important;
  }
}


/* V8.7 — vain kaksi pyydettyä korjausta.
   Teksteihin, tekstikokoihin ja sommitteluun ei kosketa. */

/* 1. Aina löytyy keino: poista kahdesta päällekkäisestä vaakaviivasta ylimääräinen.
   Yhteenvetoruudukon oma yläreuna jää näkyviin. */
.result-intro{border-bottom:0!important;}

/* 2. Etsitään / Rakennetaan / Tehdään:
   taustakuva täyttää koko näkymän navigaation alta alareunaan ja reunasta reunaan. */
.process-section{
  position:relative!important;
  min-height:calc(100vh - 74px)!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:transparent!important;
}
.process-section > .process-image{
  position:absolute!important;
  inset:0!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  left:0!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  z-index:-2!important;
  overflow:hidden!important;
}
.process-section > .process-image img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  margin:0!important;
  padding:0!important;
  display:block!important;
}
.process-section > .process-grid{
  position:relative!important;
  z-index:2!important;
}

/* Poista prosessisivulta vanhan kuvasarakkeen mahdolliset mitat/taustat */
.process-section .process-image::before,
.process-section .process-image::after{display:none!important;}

@media(max-width:620px){
  .process-section{min-height:calc(100svh - 64px)!important;}
}


/* MASTER v10 — content development on top of untouched v8-9 visual system */
.choices.rich{grid-template-columns:1fr;gap:0}.choices.rich .choice{display:block;text-align:left;padding:13px 1px}.choices.rich .choice strong{display:block;font-size:15px}.choices.rich .choice span{display:block;margin:4px 0 0 20px;font-size:12px;line-height:1.45;color:var(--muted);font-weight:400}.choices.rich .choice[aria-pressed=true] span{color:inherit;opacity:.72}.other-text{margin-top:16px}.thought-pause{min-height:54vh;padding:10vh 5vw;display:flex;align-items:center}.thought-pause>div{width:min(1180px,100%);margin:auto}.thought-pause h2{font-size:clamp(64px,7vw,116px);line-height:.88}.thought-pause p{font:28px Georgia,serif;margin-top:22px}.reflection-field{margin-top:30px}.reflection-field h2{font-size:clamp(44px,4.5vw,72px);margin-bottom:12px}.reflection-field+.reflection-field{margin-top:44px}.roi-section{background:var(--ink);color:var(--paper);padding:11vh 5vw}.roi-inner,.investment-inner,.warm-goals-inner{width:min(1180px,100%);margin:auto}.roi-section h2{font-size:clamp(86px,11vw,170px);line-height:.8}.roi-promise{font:clamp(28px,3vw,46px) Georgia,serif;margin:24px 0 58px}.roi-section h3{font-size:clamp(42px,5vw,78px);line-height:.94;max-width:900px}.roi-copy{max-width:760px;margin:52px 0;font-size:16px;line-height:1.7;color:#c8c1b6}.roi-copy strong{color:var(--paper)}.roi-number{border-top:1px solid rgba(242,239,232,.18);padding-top:30px;display:grid;gap:8px;font-size:20px}.roi-number>strong{font:clamp(30px,3vw,46px) Georgia,serif}.investment-section{padding:11vh 5vw}.investment-section h2{font-size:clamp(64px,7vw,112px);line-height:.9}.investment-section h3{font:clamp(30px,3.2vw,50px)/1.05 Georgia,serif;color:var(--wine);margin:25px 0 50px;max-width:900px}.investment-section p{font-size:18px;line-height:1.7;max-width:760px;margin:22px 0}.warm-goals{background:var(--paper);padding:11vh 5vw;border-top:1px solid var(--line)}.warm-goals h2{font-size:clamp(56px,6vw,96px);line-height:.9;max-width:1050px}.warm-goals p{font-size:17px;line-height:1.65;max-width:760px;margin-top:32px}.warm-goals>div>strong{display:block;font:clamp(28px,3vw,46px)/1.1 Georgia,serif;margin-top:50px}.meeting-note{font:22px Georgia,serif;margin:20px 0 38px}.lead-form select{width:100%;background:transparent;border:0;border-bottom:1px solid var(--line);padding:10px 0;font:inherit;color:inherit}.lead-form label{display:block}.lead-form{gap:18px}
@media(max-width:620px){.choices.rich .choice span{margin-left:20px}.thought-pause{min-height:auto;padding:85px 24px}.thought-pause h2{font-size:15vw}.roi-section,.investment-section,.warm-goals{padding:85px 24px}.roi-section h2{font-size:20vw}.roi-section h3{font-size:12vw}.investment-section h2{font-size:16vw}.warm-goals h2{font-size:14vw}}

/* V10.1 — käyttäjän 28.9. tarkennukset. Nykyistä v8-9-maailmaa ei muuteta. */
/* Landingin läpikuultava tekstialue alkaa täsmälleen vasemmasta reunasta. */
.hero-copy{
  margin-left:0!important;
  border-left:0!important;
  border-radius:0!important;
}
.hero-copy::before{left:0!important;border-left:0!important;border-radius:0!important}

/* Pieni ROI-koukku landingille: tarkoituksella hillitty, ei uusi sisältöblokki. */
.hero-roi-teaser{
  position:absolute;
  z-index:3;
  right:clamp(24px,4vw,70px);
  bottom:clamp(28px,5vh,62px);
  width:max-content;
  max-width:220px;
  padding:15px 0 12px;
  border-top:1px solid rgba(23,23,20,.55);
  color:var(--ink);
  text-decoration:none;
  text-align:left;
  background:rgba(242,239,232,.16);
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
}
.hero-roi-teaser span{
  display:block;
  font:clamp(24px,2.2vw,34px)/1 Georgia,serif;
  letter-spacing:-.02em;
}
.hero-roi-teaser strong{display:block;margin-top:3px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.hero-roi-teaser small{display:block;margin-top:10px;font-size:11px;color:var(--muted)}

/* Jatketaan ajatusta: kaikki yhteystietokenttien viivat samaan linjaan. */
.lead-form{
  grid-template-columns:repeat(5,minmax(0,1fr));
  column-gap:clamp(16px,2vw,28px);
  row-gap:24px;
  align-items:end;
}
.lead-form label{display:grid!important;grid-template-rows:18px 46px;align-items:end;gap:0!important}
.lead-form input,.lead-form select{
  box-sizing:border-box;
  width:100%;
  height:46px;
  margin:0;
  padding:10px 0 9px;
  border:0;
  border-bottom:1px solid #9b978f;
  border-radius:0;
  background:transparent;
}
.lead-form button,.lead-form .form-note{grid-column:1/-1}

@media(max-width:900px){
  .lead-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero-roi-teaser{right:24px;bottom:24px}
}
@media(max-width:620px){
  .lead-form{grid-template-columns:1fr}
  .hero-roi-teaser{
    position:relative;
    right:auto;bottom:auto;
    display:block;
    margin:0 24px 28px auto;
    max-width:190px;
  }
}


/* MASTER v12 — täsmäkorjaukset v10.1-haaraan. */
/* Landingin lupaus: vain hienoinen painotus luettavuuteen. */
.hero .promise{font-weight:600;color:var(--ink)}

/* Etsitään / Rakennetaan / Tehdään: läpikuultava pinta kiinni vasempaan reunaan. */
.process-section .process-grid > div::before{
  left:calc(-50vw + 50%)!important;
  border-left:0!important;
  border-radius:0!important;
}

/* V10.1:n landing-ROI-kortti poistettu; 500 % ROI on nyt päävalikossa. */
.hero-roi-teaser{display:none!important}

/* Uusi navigaatio pidetään kevyenä ja v8-9:n omassa typografiassa. */
header nav a[href="#roi"]{font-weight:700}

/* MASTER v13 — locked KikaMaka wordmark */
.brand{display:flex;align-items:center;line-height:0}
.brand img{display:block;width:clamp(150px,13vw,205px);height:auto}
@media(max-width:760px){.brand img{width:142px}}


/* MASTER v14 — käyttäjän 28.9. täsmäkorjaukset */
/* Kevyet pystyviivat päävalikon ydinkohtien väliin. */
header nav a[href="#roi"],
header nav a[href="#toimimme"]{position:relative;margin-left:7px}
header nav a[href="#roi"]::before,
header nav a[href="#toimimme"]::before{
  content:"";position:absolute;left:-17px;top:50%;width:1px;height:16px;
  background:rgba(23,23,20,.22);transform:translateY(-50%);
}

/* Hetki ajatuksille liittyy nyt suoraan sitä seuraaviin kysymyksiin. */
.reflection-intro{margin:0 0 clamp(30px,4vw,54px)}
.reflection-intro .eyebrow{margin:0 0 8px;color:#000!important;font:700 11px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.reflection-intro>p:last-child{margin:0;color:#000!important;font:22px/1.3 Georgia,serif;opacity:.9}
.reflection .reflection-field h2{color:#fff!important}
.reflection textarea{color:#fff!important;border-bottom-color:rgba(255,255,255,.52)!important}
.reflection textarea::placeholder{color:rgba(255,255,255,.78)!important}

/* Aina löytyy keino: vain yksi jakava viiva, ei päällekkäisiä. */
.full-summary{border-top:0!important;padding-top:0!important}
.full-summary>div:nth-child(-n+2){border-top:1px solid rgba(255,255,255,.16)!important}

/* Yhteystiedoissa nimet ja puhelinnumerot alkavat omista samoista linjoistaan. */
.contact-details .people a{display:grid;grid-template-columns:130px max-content;column-gap:18px;align-items:baseline}

/* Lähetyksen palaute näkyy selvästi mutta KikaMakan sävyllä. */
.form-note{min-height:18px;transition:opacity .2s ease}
.form-note.success{color:var(--wine);font-weight:700}
.form-note.error{color:#8b2e2e;font-weight:700}
.send-button:disabled{opacity:.65;cursor:wait}
@media(max-width:760px){
 header nav a[href="#roi"]::before,header nav a[href="#toimimme"]::before{display:none}
 .contact-details .people a{grid-template-columns:120px max-content;column-gap:12px}
}

/* MASTER v15 — 28.9. visuaaliset täsmäkorjaukset kuvakaappausten perusteella */
/* 1) Navigaation jakajat aidosti sanojen välisen vapaan tilan keskelle. */
header nav{gap:0!important}
header nav a:not(.contact-now){position:relative;margin:0!important;padding:0 18px!important}
header nav a[href="#kysymykset"]{padding-left:0!important}
header nav a[href="#roi"]::before,
header nav a[href="#toimimme"]::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:50%!important;
  width:1px!important;
  height:15px!important;
  background:rgba(23,23,20,.22)!important;
  transform:translateY(-50%)!important;
}
header nav .contact-now{margin-left:18px!important}

/* 2–4) Taustakuvien omat valkoiset kehysraidat rajataan näkymän ulkopuolelle.
   Section pysyy reunasta reunaan; sisältöön tai typografiaan ei kosketa. */
.question > .q-image img,
.editorial > .editorial-image img,
.process-section > .process-image img{
  width:112%!important;
  height:112%!important;
  min-width:112%!important;
  min-height:112%!important;
  left:-6%!important;
  top:-6%!important;
  right:auto!important;
  bottom:auto!important;
  object-fit:cover!important;
  transform:none!important;
}

/* Pidetään osioiden rajat rauhallisina — ei ylimääräistä viivaa taustakuvan päällä. */
.question{border-bottom:0!important}

@media (min-width:621px) and (max-width:980px){
  header nav a:not(.contact-now){padding:0 12px!important}
  header nav a[href="#kysymykset"]{padding-left:0!important}
  header nav .contact-now{margin-left:12px!important}
}
@media(max-width:620px){
  header nav a[href="#roi"]::before,header nav a[href="#toimimme"]::before{display:none!important}
}

/* MASTER v16 — 28.9. kaksi täsmäkorjausta käyttäjän kuvakaappauksen perusteella. */
/* Kysymyssivujen lähdekuvissa olevat vaaleat/valkoiset kehysraidat rajataan kunnolla ulos.
   Teksti- ja transparent-asetteluun ei kosketa. */
.question > .q-image img{
  width:132%!important;
  height:132%!important;
  min-width:132%!important;
  min-height:132%!important;
  left:-16%!important;
  top:-16%!important;
  object-fit:cover!important;
  object-position:center center!important;
}


/* MASTER v17 — 28.9. käyttäjän kuvakaappausten täsmäkorjaukset.
   Valkoisiin kuvarajoihin ei kosketa tässä versiossa. */

/* Lukittu KikaMaka-wordmark: selain ei saa venyttää logoa yleisellä img-säännöllä. */
header .brand img{
  display:block!important;
  width:clamp(150px,13vw,205px)!important;
  height:auto!important;
  max-height:42px!important;
  object-fit:contain!important;
}

/* Valinnat: otsikko ja selite erotetaan oikeasti toisistaan.
   Radioympyrä on omassa sarakkeessaan, joten tekstit eivät enää liimaudu yhteen. */
.choices.rich .choice{
  display:grid!important;
  grid-template-columns:9px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:12px!important;
  row-gap:4px!important;
  align-items:start!important;
  padding:13px 1px!important;
}
.choices.rich .choice::before{
  grid-column:1!important;
  grid-row:1!important;
  margin:3px 0 0 0!important;
}
.choices.rich .choice strong{
  grid-column:2!important;
  grid-row:1!important;
  display:block!important;
  margin:0!important;
  font-size:15px!important;
  line-height:1.18!important;
}
.choices.rich .choice span{
  grid-column:2!important;
  grid-row:2!important;
  display:block!important;
  margin:0!important;
  font-size:12px!important;
  line-height:1.38!important;
  color:var(--muted)!important;
  font-weight:400!important;
}
.choices.rich .choice[aria-pressed=true] span{color:inherit!important;opacity:.72}

/* Tapaamistapa ei ole selainvalikko vaan kolme KikaMakan omaa valintaa. */
.lead-form .meeting-mode{
  border:0!important;
  padding:0!important;
  margin:0!important;
  min-width:0;
  align-self:end;
}
.lead-form .meeting-mode legend{
  padding:0;
  margin:0 0 8px;
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.meeting-options{display:flex;gap:7px;flex-wrap:wrap}
.meeting-options label{display:block!important;cursor:pointer}
.meeting-options input{position:absolute;opacity:0;pointer-events:none;width:1px!important;height:1px!important}
.meeting-options span{
  display:block;
  border:1px solid rgba(23,23,20,.28);
  border-radius:999px;
  padding:9px 12px;
  font-size:12px;
  line-height:1;
  letter-spacing:0;
  text-transform:none;
  background:rgba(242,239,232,.28);
  transition:.18s ease;
}
.meeting-options input:checked + span{
  background:var(--wine);
  border-color:var(--wine);
  color:#fff;
}
.meeting-options input:focus-visible + span{outline:2px solid var(--ink);outline-offset:2px}

@media(max-width:620px){
  header .brand img{width:142px!important;max-height:36px!important}
  .meeting-options{gap:8px}
}


/* MASTER v18 — 28.9.2026 — vain käyttäjän hyväksymät korjaukset. */

/* 1. Logo 55 % v17:n koosta. */
header .brand img{
  width:clamp(83px,7.15vw,113px)!important;
  max-height:24px!important;
}

/* 2. Kaikki rich-valinnat: aihe omalla rivillä, tarkennus sen alla,
      ja selvä hengitysväli vaihtoehtojen välille. */
.choices.rich{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:0!important;
}
.choices.rich .choice{
  display:grid!important;
  grid-template-columns:9px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:13px!important;
  row-gap:7px!important;
  align-items:start!important;
  padding:16px 1px 17px!important;
  white-space:normal!important;
}
.choices.rich .choice::before{
  grid-column:1!important;
  grid-row:1!important;
  margin:4px 0 0!important;
}
.choices.rich .choice strong{
  grid-column:2!important;
  grid-row:1!important;
  display:block!important;
  margin:0!important;
  font:700 15px/1.22 Arial,Helvetica,sans-serif!important;
}
.choices.rich .choice span{
  grid-column:2!important;
  grid-row:2!important;
  display:block!important;
  margin:0!important;
  font:400 12px/1.48 Arial,Helvetica,sans-serif!important;
  color:var(--muted)!important;
}
.choices.rich .choice[aria-pressed=true] span{color:inherit!important;opacity:.72}

/* 3. Hetki ajatuksille: sama vaalea typografinen/asettelullinen maailma kuin muissa kysymyssivuissa. */
.question.reflection{
  background:var(--paper)!important;
  color:var(--ink)!important;
}
.reflection .reflection-intro{margin:0 0 clamp(30px,4vw,54px)!important}
.reflection .reflection-intro .eyebrow{
  margin:0 0 10px!important;
  color:var(--ink)!important;
  font:700 11px/1.2 Arial,Helvetica,sans-serif!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
.reflection .reflection-intro>p:last-child{
  margin:0!important;
  color:var(--ink)!important;
  font:clamp(42px,5vw,72px)/.98 Georgia,serif!important;
  opacity:1!important;
}
.reflection .reflection-field h2{color:var(--ink)!important}
.reflection textarea{color:var(--ink)!important;border-bottom-color:var(--line)!important}
.reflection textarea::placeholder{color:var(--muted)!important}
.reflection .text-link,.reflection .next{color:var(--ink)!important}

/* 4. ROI: sama rauhallinen KikaMaka-hierarkia, ei raakaa tekstimassaa. Sisältö ennallaan. */
.roi-section{
  background:var(--paper)!important;
  color:var(--ink)!important;
  padding:clamp(90px,11vh,150px) 5vw!important;
  border-top:1px solid var(--line)!important;
}
.roi-inner{width:min(1180px,100%)!important;margin:auto!important}
.roi-section h2{
  font:clamp(72px,9vw,140px)/.84 Georgia,serif!important;
  margin:0!important;
  letter-spacing:-.045em!important;
}
.roi-promise{
  font:clamp(26px,2.7vw,42px)/1.05 Georgia,serif!important;
  color:var(--wine)!important;
  margin:20px 0 clamp(52px,7vw,88px)!important;
}
.roi-section h3{
  font:clamp(38px,4.4vw,68px)/.98 Georgia,serif!important;
  max-width:900px!important;
  margin:0!important;
}
.roi-copy{
  max-width:760px!important;
  margin:clamp(44px,6vw,72px) 0!important;
  font-size:16px!important;
  line-height:1.72!important;
  color:var(--ink)!important;
}
.roi-copy p{margin:0 0 22px!important}
.roi-copy strong{color:var(--ink)!important}
.roi-number{
  max-width:900px!important;
  border-top:1px solid var(--line)!important;
  padding-top:30px!important;
  display:grid!important;
  gap:10px!important;
  color:var(--ink)!important;
}
.roi-number p,.roi-number span{margin:0!important}
.roi-number>strong{
  font:clamp(28px,3vw,46px)/1.08 Georgia,serif!important;
  color:var(--wine)!important;
}

/* 5. Miten tavataan: kolme selkeää KikaMaka-valintaa, ei selaimen lomakefiilistä. */
.lead-form .meeting-mode{grid-column:1/-1!important;margin-top:8px!important}
.lead-form .meeting-mode legend{
  margin:0 0 12px!important;
  font:700 11px/1.2 Arial,Helvetica,sans-serif!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
}
.meeting-options{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}
.meeting-options label{display:block!important;margin:0!important;cursor:pointer!important}
.meeting-options span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  border:1px solid var(--line)!important;
  border-radius:0!important;
  padding:11px 14px!important;
  background:transparent!important;
  font:600 12px/1.2 Arial,Helvetica,sans-serif!important;
  transition:.18s ease!important;
}
.meeting-options input:checked + span{
  background:var(--wine)!important;
  border-color:var(--wine)!important;
  color:#000!important;
}
.form-note:empty{display:none!important}

@media(max-width:620px){
  header .brand img{width:78px!important;max-height:22px!important}
  .meeting-options{grid-template-columns:1fr!important}
  .roi-section{padding:85px 24px!important}
  .roi-section h2{font-size:18vw!important}
  .roi-section h3{font-size:11vw!important}
}

/* MASTER v18.1 — cache-safe final overrides */
header .brand img{width:113px!important;height:auto!important;max-height:24px!important;object-fit:contain!important}
.choices.rich .choice{display:grid!important;grid-template-columns:9px minmax(0,1fr)!important;grid-template-rows:auto auto!important;column-gap:13px!important;row-gap:7px!important;padding:16px 1px 17px!important;align-items:start!important}
.choices.rich .choice strong{grid-column:2!important;grid-row:1!important;display:block!important;margin:0!important}
.choices.rich .choice span{grid-column:2!important;grid-row:2!important;display:block!important;margin:0!important}
@media(max-width:620px){header .brand img{width:78px!important;max-height:22px!important}}
