:root{
  --bone:#F3EFE5;
  --bone-2:#E9E2D5;
  --ocean:#173B46;
  --ocean-dark:#0F2B33;
  --eucalyptus:#667A68;
  --ochre:#D79A55;
  --clay:#B95F45;
  --charcoal:#252725;
  --line-new:rgba(23,59,70,.16);
  --max-new:1240px;
}
body.tool-page{margin:0;background:var(--bone);color:var(--charcoal);font-family:"Plus Jakarta Sans",Arial,sans-serif;line-height:1.58}
.tool-page .wrap{width:min(calc(100% - 48px),var(--max-new));margin-inline:auto}
.tool-page .skip-link{position:absolute;left:-9999px}.tool-page .skip-link:focus{left:16px;top:16px;z-index:100;background:white;padding:10px 14px}
.tool-page .display,.tool-page h1,.tool-page h2,.tool-page h3,.tool-page .quiz__q,.tool-page .quiz__intro h2,.tool-page .result h2,.tool-page .result__num,.tool-page .quiz__steps li::before{font-family:"Syne",Arial,sans-serif}
.tool-page .eyebrow,.tool-page .sc-name{margin:0 0 14px;text-transform:uppercase;letter-spacing:.19em;font-size:.68rem;font-weight:700;color:var(--eucalyptus)}

/* Header */
.tool-header{position:relative;z-index:30;background:rgba(243,239,229,.96);border-bottom:1px solid var(--line-new)}
.tool-header__inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.tool-logo{display:flex;align-items:center;height:60px;width:auto;flex:0 0 auto}.tool-logo img{display:block;height:100%;width:auto;max-width:100%}
.tool-nav{display:flex;align-items:center;gap:27px;font-size:.76rem;font-weight:650;color:var(--ocean)}
.tool-nav a:not(.tool-btn){opacity:.83}.tool-nav a:not(.tool-btn):hover{opacity:1}
.tool-btn,.tool-page .btn,.tool-page .btn--solid{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;border-radius:999px;background:var(--clay);color:white!important;padding:13px 20px;font:700 .78rem/1.2 "Plus Jakarta Sans",sans-serif;text-decoration:none;cursor:pointer;transition:.2s ease}
.tool-btn:hover,.tool-page .btn:hover,.tool-page .btn--solid:hover{background:#9f4935;transform:translateY(-1px)}

/* Shared tool hero */
.tool-hero{position:relative;overflow:hidden;padding:78px 0 94px;background:var(--bone)}
.tool-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(243,239,229,.99) 0%,rgba(243,239,229,.95) 58%,rgba(243,239,229,.72) 100%),url('/assets/img/mood/sunlit_palm_shadows_on_plaster.png') right center/58% auto no-repeat;pointer-events:none}
.tool-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,.88fr) minmax(500px,1.12fr);gap:72px;align-items:start}
.sc-intro{padding-top:28px;position:sticky;top:108px}
.sc-intro h1{margin:0 0 24px;font-size:clamp(3.3rem,5.5vw,5.9rem);line-height:.9;letter-spacing:-.055em;font-weight:600;color:var(--ocean)}
.sc-intro .lead{max-width:560px;margin:0;color:#4f5d60;font-size:1.04rem;line-height:1.7}
.sc-facts{display:grid;gap:0;margin:34px 0 0;padding:0;list-style:none;border-top:1px solid var(--line-new);max-width:520px}
.sc-facts li{position:relative;padding:14px 0 14px 30px;border-bottom:1px solid var(--line-new);font-size:.8rem;color:#5f696c}
.sc-facts li:before{content:"↗";position:absolute;left:0;top:12px;color:var(--clay);font-family:"Syne",sans-serif;font-weight:700}
.tool-kicker{margin-top:34px;font-family:"Syne",sans-serif;color:var(--ocean);font-weight:600;font-size:1.18rem;line-height:1.15;max-width:430px}
.tool-kicker span{color:var(--clay)}

/* Quiz component reskin. IDs/classes stay untouched for JS. */
.tool-page .quiz{scroll-margin-top:105px;display:flex;flex-direction:column;min-height:620px;padding:clamp(28px,3.5vw,46px);background:rgba(255,255,255,.92);border:1px solid var(--line-new);border-radius:2px;box-shadow:0 22px 60px rgba(23,59,70,.08);color:var(--charcoal)}
.tool-page .quiz__top{margin-bottom:28px}
.tool-page .quiz__progress{height:3px;background:rgba(23,59,70,.12)}
.tool-page .quiz__progress span{background:var(--clay)}
.tool-page .quiz__count,.tool-page .quiz__back{color:#6c7678;font-family:"Plus Jakarta Sans",sans-serif}
.tool-page .quiz__back:hover{color:var(--clay)}
.tool-page .quiz__q,.tool-page .quiz__intro h2{color:var(--ocean);font-weight:600;letter-spacing:-.04em;line-height:1.02}
.tool-page .quiz__q{font-size:clamp(1.9rem,2.6vw,2.8rem)}
.tool-page .quiz__intro h2{font-size:clamp(2.25rem,3.5vw,3.3rem);margin:0 0 16px}
.tool-page .quiz__hint,.tool-page .quiz__intro p{color:#697375;font-size:.82rem}
.tool-page .quiz__steps{margin-top:30px}
.tool-page .quiz__steps li{border-color:var(--line-new);color:#5c686a;font-size:.82rem;grid-template-columns:40px 1fr}
.tool-page .quiz__steps li::before{color:var(--clay);font-weight:600}
.tool-page .options{gap:10px}
.tool-page .option{min-height:60px;padding:15px 17px;background:var(--bone);border:1px solid rgba(23,59,70,.16);border-radius:2px;color:var(--charcoal);font:500 .9rem/1.4 "Plus Jakarta Sans",sans-serif}
.tool-page .option:hover{border-color:rgba(185,95,69,.6);background:#f7f4ec}
.tool-page .option[aria-pressed="true"]{border-color:var(--clay);background:rgba(185,95,69,.07)}
.tool-page .option__mark{border-color:rgba(185,95,69,.65)}
.tool-page .option[aria-pressed="true"] .option__mark{background:var(--clay);box-shadow:inset 0 0 0 4px var(--bone)}
.tool-page .field__label{color:var(--ocean);font-size:.76rem;font-weight:700}
.tool-page .field__label small{color:#7b8283}
.tool-page .input{background:#fff;border:1px solid rgba(23,59,70,.18);color:var(--charcoal);border-radius:2px;font-family:"Plus Jakarta Sans",sans-serif}
.tool-page .input:focus{border-color:var(--clay);background:#fff;outline:none}
.tool-page .field__error{color:#9e4333}
.tool-page .form__fine,.tool-page .form__fine a{color:#737c7d}
.tool-page .result__path,.tool-page .result__section h3{color:var(--clay)}
.tool-page .result h2{color:var(--ocean);font-weight:600;letter-spacing:-.04em}
.tool-page .result__body,.tool-page .result__steps{color:#596568}
.tool-page .result__figures{border-color:var(--line-new)}
.tool-page .result__figure + .result__figure{border-color:var(--line-new)}
.tool-page .result__num{color:var(--ocean);font-weight:600}
.tool-page .result__label,.tool-page .result__sent,.tool-page .assumptions{color:#6a7476}
.tool-page .result__notes li{border-color:var(--line-new)}
.tool-page .result__notes strong{color:var(--clay)}
.tool-page .assumptions summary{color:var(--ocean)}

/* Intro/supporting bands */
.tool-band{background:var(--ocean-dark);color:var(--bone);padding:62px 0}
.tool-band__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}
.tool-band h2{margin:0;font-size:clamp(2.5rem,4.4vw,4.6rem);line-height:.94;letter-spacing:-.05em;font-weight:600}
.tool-band p{margin:0;color:rgba(243,239,229,.72);max-width:600px}
.tool-band .eyebrow{color:var(--ochre)}
.tool-stages{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid rgba(243,239,229,.18);margin-top:34px}
.tool-stage{padding:22px 18px 0 0;border-right:1px solid rgba(243,239,229,.15);min-height:120px}
.tool-stage:last-child{border-right:0;padding-left:18px}.tool-stage:not(:first-child){padding-left:18px}
.tool-stage b{display:block;font-family:"Syne",sans-serif;color:var(--ochre);font-size:1.5rem;margin-bottom:10px}.tool-stage span{font-size:.72rem;color:rgba(243,239,229,.74)}

/* Scorecard informational sections */
.tool-page .section{padding:88px 0;background:var(--bone);color:var(--charcoal)}
.tool-page .section--line{border-top:1px solid var(--line-new)}
.tool-page .section__head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:38px}
.tool-page .section__head h2,.tool-page .receipts-wrap h2,.tool-page .closer h2{margin:0;color:var(--ocean);font-weight:600;letter-spacing:-.045em;line-height:.96;font-size:clamp(2.6rem,4.5vw,4.5rem)}
.tool-page .section__head p,.tool-page .receipts-wrap p,.tool-page .plain p{color:#5e696c}
.tool-page .receipts-wrap{gap:72px}
.tool-page .receipts{gap:14px}
.tool-page .receipt{background:#fff;border:1px solid var(--line-new);border-radius:2px;box-shadow:none;color:var(--charcoal)}
.tool-page .receipt h3{color:var(--ocean);font-size:1.35rem;font-weight:600}
.tool-page .receipt__row{border-color:var(--line-new);color:#626d70}
.tool-page .receipt__row--total{color:var(--ocean)}
.tool-page .receipt--direct{background:var(--ocean);color:var(--bone);border-color:var(--ocean)}
.tool-page .receipt--direct h3,.tool-page .receipt--direct .receipt__row--total{color:var(--bone)}
.tool-page .receipt--direct .receipt__row{color:rgba(243,239,229,.76);border-color:rgba(243,239,229,.16)}
.tool-page .receipts-wrap .receipt__note{color:#6c7475}.tool-page .receipts-wrap .receipt--direct .receipt__note{color:rgba(243,239,229,.64)}
.tool-page .proof{gap:16px}
.tool-page .proof__shot{border-radius:2px;background:#e4ddd1;border-color:var(--line-new)}
.tool-page .proof figcaption{color:#667174}
.tool-page .index{column-gap:64px}
.tool-page .index__item{border-color:var(--line-new)}
.tool-page .index__item h3{color:var(--ocean);font-weight:600;font-size:1.2rem}
.tool-page .index__item p{color:#657073}
.tool-page .plain>div{background:#fff;border:1px solid var(--line-new);padding:38px}
.tool-page .plain h3{color:var(--ocean);font-weight:600;font-size:1.6rem}
.tool-page .closer{text-align:center;background:linear-gradient(145deg,rgba(15,43,51,.94),rgba(37,39,37,.9)),url('/assets/img/mood/golden_palm_shadows_on_charcoal_wall.png') center/cover no-repeat;color:var(--bone)}
.tool-page .closer h2{color:var(--bone)}.tool-page .closer p{color:rgba(243,239,229,.7);margin-bottom:24px}

/* Footer */
.tool-footer{background:var(--bone);border-top:1px solid var(--line-new);padding:42px 0}
.tool-footer__grid{display:grid;grid-template-columns:210px 1fr auto;align-items:center;gap:40px}.tool-footer img{width:190px}.tool-footer nav{display:flex;justify-content:center;gap:24px;font-size:.72rem;color:var(--ocean)}.tool-footer__meta{text-align:right;font-size:.6rem;text-transform:uppercase;letter-spacing:.13em;color:#727a7b}

@media(max-width:980px){
  .tool-grid{grid-template-columns:1fr;gap:42px}.sc-intro{position:static;padding-top:0}.tool-hero{padding-top:58px}.tool-band__grid{grid-template-columns:1fr;gap:24px}.tool-stages{grid-template-columns:repeat(3,1fr);row-gap:28px}.tool-stage:nth-child(4){padding-left:0}.tool-footer__grid{grid-template-columns:1fr;text-align:center}.tool-footer img{margin:auto}.tool-footer nav{flex-wrap:wrap}.tool-footer__meta{text-align:center}
}
@media(max-width:760px){
  .tool-page .wrap{width:min(calc(100% - 32px),var(--max-new))}.tool-header__inner{height:72px}.tool-logo{height:50px;width:auto}.tool-nav a:not(.tool-btn){display:none}.tool-hero{padding:48px 0 64px}.tool-hero:before{background:linear-gradient(180deg,rgba(243,239,229,.99),rgba(243,239,229,.94))}.sc-intro h1{font-size:3.45rem}.tool-page .quiz{min-height:560px;padding:28px 20px}.tool-stages{grid-template-columns:1fr 1fr}.tool-stage:nth-child(odd){padding-left:0}.tool-page .section{padding:68px 0}.tool-page .section__head{display:block}.tool-page .section__head p{margin-top:14px}.tool-page .plain{grid-template-columns:1fr}.tool-footer nav{gap:16px}
}

/* Refinement pass 02 -----------------------------------------------------
   Rebrand the shared results-flow components. site.css still contains the
   original dark quiz result treatment, so these later selectors deliberately
   scope the current SOL system to the two live vacation-rental tools. */
.tool-page .rf{color:var(--charcoal)}
.tool-page .rf-progress i{background:rgba(23,59,70,.12)}
.tool-page .rf-progress i::after{background:var(--clay)}
.tool-page .rf-nav{color:#6b7577;font-family:"Plus Jakarta Sans",sans-serif}
.tool-page .rf-nav:hover:not(:disabled){color:var(--ocean)}
.tool-page .rf-nav--next{color:var(--clay);font-weight:700}
.tool-page .rf-nav--next:hover{color:#9f4935}
.tool-page .s1-headline{color:var(--ocean);font-family:"Syne",sans-serif;font-weight:600;letter-spacing:-.035em}
.tool-page .nextmove{border:1px solid rgba(23,59,70,.14);border-radius:2px;background:linear-gradient(145deg,#F7F3EA,#fff);box-shadow:none}
.tool-page .nextmove__kind{color:var(--eucalyptus);font-family:"Plus Jakarta Sans",sans-serif;text-transform:uppercase;letter-spacing:.14em;font-size:.66rem;font-weight:700}
.tool-page .nextmove--figure .nextmove__fig{color:var(--ochre);font-family:"Syne",sans-serif;font-weight:500;letter-spacing:-.045em}
.tool-page .nextmove__why{color:#677173}
.tool-page .nextmove__payoff{color:var(--clay);border-top-color:rgba(23,59,70,.12)}
.tool-page .rf-eyebrow{color:#7a8384;font-family:"Plus Jakarta Sans",sans-serif}
.tool-page .rf-stagefig{color:var(--ochre);font-family:"Syne",sans-serif;font-weight:500;letter-spacing:-.045em}
.tool-page .rf-stageof{color:#747d7f}
.tool-page .rf-stage-sub{color:#596568}
.tool-page .ladder-track__line{background:rgba(23,59,70,.14)}
.tool-page .ladder-track__fill{background:var(--ochre)}
.tool-page .ladder__dot{border-color:rgba(23,59,70,.16);background:var(--charcoal);color:var(--bone);font-family:"Syne",sans-serif;font-weight:500}
.tool-page .ladder__step.is-done .ladder__dot{border-color:var(--ochre);background:var(--ocean);color:var(--bone)}
.tool-page .ladder__step.is-now .ladder__dot{border-color:var(--ochre);background:var(--ochre);color:var(--charcoal);animation:toolLadderGlow 2s ease-in-out infinite}
@keyframes toolLadderGlow{0%,100%{box-shadow:0 0 0 rgba(215,154,85,0)}50%{box-shadow:0 0 22px rgba(215,154,85,.3)}}
.tool-page .ladder__name{color:#7a8283}
.tool-page .ladder__step.is-now .ladder__name{color:var(--ocean)}
.tool-page .rf-narrative h2,.tool-page .rf-intent-q,.tool-page .rf-cta-heading{color:var(--ocean);font-family:"Syne",sans-serif;font-weight:600;letter-spacing:-.03em}
.tool-page .rf-n-line{color:#596568}
.tool-page .rf-n-line b{color:var(--clay)}
.tool-page .rf-n-bridge{color:#697375}
.tool-page .rf-n-payoff{color:#6b7476;border-top-color:rgba(23,59,70,.14)}
.tool-page .rf-n-move{border-left-color:var(--clay);border-radius:2px;background:rgba(185,95,69,.055)}
.tool-page .rf-n-move__label{color:var(--clay);font-family:"Syne",sans-serif;font-weight:600;text-decoration-color:rgba(185,95,69,.25)}
.tool-page .rf-n-move__why{color:#596568}
.tool-page .rf-cta-body{color:#596568}
.tool-page .intent__btn{border-color:rgba(23,59,70,.22);background:var(--bone);color:var(--ocean);font-family:"Plus Jakarta Sans",sans-serif}
.tool-page .intent__row:not(.is-touched) .intent__btn{animation:none}
.tool-page .intent__btn:hover{border-color:var(--clay);background:#f8f3eb;box-shadow:none}
.tool-page .intent__btn[aria-pressed="true"]{border-color:var(--clay);background:var(--clay);color:#fff}
.tool-page .intent__btn:focus-visible{outline-color:var(--clay)}
.tool-page .moves__n{color:var(--clay);font-family:"Syne",sans-serif}
.tool-page .moves__item h4{color:var(--ocean)}
.tool-page .moves__item p{color:#657073}
.tool-page .result__kind,.tool-page .result__proof{color:#697375;border-color:rgba(23,59,70,.14)}
.tool-page .consent{color:#6d7779}
.tool-page .consent input{accent-color:var(--clay)}

/* Give the dark explainer bands a visible ending before the dark footer. */
.tool-band{border-bottom:1px solid rgba(215,154,85,.58)}

/* Result-screen live calendar */
.result__booking{margin-top:26px;padding-top:22px;border-top:1px solid rgba(23,59,70,.16)}
.result__booking .booking{margin-top:0}
.booking__loading,.result__booking .booking__fallback{margin:0 0 16px;color:#687376;font-size:.82rem;line-height:1.55}
.result__booking .booking__fallback[hidden]{display:none}
.result__booking .booking__days{margin-top:6px}


/* Timed deeper-content layer for vacation-rental lead magnets */
.tool-deeper[hidden]{display:none}
.tool-deeper{
  padding:92px 0;
  background:var(--bone);
  border-top:1px solid rgba(23,59,70,.12);
  opacity:0;
  transform:translateY(14px);
  transition:opacity .5s ease,transform .5s ease;
}
.tool-deeper.is-revealed{opacity:1;transform:none}
.tool-deeper__intro{max-width:820px;margin-bottom:46px}
.tool-deeper__intro h2,.tool-deeper__split h2{
  color:var(--ocean);
  font-family:"Syne",sans-serif;
  font-weight:600;
  letter-spacing:-.035em;
  font-size:clamp(2rem,4vw,3.4rem);
  line-height:1.02;
  margin:8px 0 18px;
}
.tool-deeper__intro>p:last-child{max-width:760px;color:#5f6b6e;line-height:1.75}
.tool-deeper__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:0 0 72px}
.tool-deeper__card{background:#fff;border:1px solid rgba(23,59,70,.12);padding:30px;min-width:0}
.tool-deeper__card>span{display:block;color:var(--clay);font-size:.7rem;font-weight:700;letter-spacing:.14em;margin-bottom:28px}
.tool-deeper__card h3,.tool-deeper__stages h3,.tool-deeper__cta h3{color:var(--ocean);font-family:"Syne",sans-serif;font-weight:600;letter-spacing:-.02em}
.tool-deeper__card h3{font-size:1.35rem;margin:0 0 12px}
.tool-deeper__card p,.tool-deeper__stages p,.tool-deeper__cta p,.tool-deeper__list p{color:#647073;line-height:1.7}
.tool-deeper__split{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:70px;padding:62px 0;border-top:1px solid rgba(23,59,70,.12)}
.tool-deeper__list p{padding:0 0 18px;margin:0 0 18px;border-bottom:1px solid rgba(23,59,70,.1)}
.tool-deeper__list p:last-child{border-bottom:0;margin-bottom:0}
.tool-deeper__list strong{color:var(--ocean)}
.tool-deeper__stages{display:grid;gap:0;margin-bottom:64px;border-top:1px solid rgba(23,59,70,.12)}
.tool-deeper__stages article{display:grid;grid-template-columns:80px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid rgba(23,59,70,.12)}
.tool-deeper__stages b{color:var(--ochre);font-family:"Syne",sans-serif;font-size:1.5rem;font-weight:500}
.tool-deeper__stages h3{margin:0 0 6px;font-size:1.25rem}
.tool-deeper__stages p{margin:0}
.tool-deeper__cta{display:flex;justify-content:space-between;align-items:center;gap:36px;padding:34px;background:var(--ocean);color:var(--bone)}
.tool-deeper__cta h3{color:var(--bone);font-size:1.55rem;margin:0 0 8px}
.tool-deeper__cta p{color:rgba(243,239,229,.72);margin:0;max-width:650px}
.rf-deeper-trigger{
  display:block;
  width:100%;
  margin:18px 0 4px;
  padding:13px 0;
  border:0;
  border-top:1px solid rgba(23,59,70,.12);
  background:transparent;
  color:var(--clay);
  font:700 .78rem/1.4 "Plus Jakarta Sans",sans-serif;
  cursor:pointer;
  text-align:left;
}
.rf-deeper-trigger:hover{text-decoration:underline}
.rf-deeper-trigger:focus-visible{outline:2px solid var(--clay);outline-offset:4px}

@media(max-width:760px){
  .tool-deeper{padding:68px 0}
  .tool-deeper__grid{grid-template-columns:1fr;margin-bottom:54px}
  .tool-deeper__split{grid-template-columns:1fr;gap:28px;padding:48px 0}
  .tool-deeper__cta{display:block;padding:28px 22px}
  .tool-deeper__cta .btn{margin-top:20px;width:100%;justify-content:center}
  .tool-deeper__stages article{grid-template-columns:54px 1fr}
}
@media(prefers-reduced-motion:reduce){
  .tool-deeper{transition:none}
}
