/* Homepage treatment, following the About page's scale and section rhythm. */
.home-page main>.section .container,.home-page .hero .container{max-width:1360px}
.home-page .hero{position:relative;overflow:hidden}
.home-page .hero-grid{padding:94px 0 105px}
.home-page .hero-content{max-width:1120px}
.home-page .hero h1{font-size:clamp(88px,11.3vw,158px);line-height:1.01;letter-spacing:-.075em;margin:0 0 35px}
.home-page .hero-description{font-size:23px;line-height:1.65;max-width:1040px;color:#bcc6b7}
.home-page .hero-actions{margin-top:34px;gap:30px}
.home-page .hero-actions .text-link{font-size:16px;gap:18px}
.home-page .hero-actions .button{font-size:16px;padding:18px 25px;min-height:59px}
.home-page main>.section{padding:140px 0}
.home-page main h2{font-size:clamp(50px,5.65vw,80px);line-height:1.08;letter-spacing:-.055em}
.home-page .section-heading{margin-bottom:70px;max-width:830px}
.home-page .context{background:#efeee6;color:#172014;border:0;overflow:hidden}
.home-page .context h2{max-width:1000px;font-size:clamp(52px,6.2vw,88px);margin-bottom:66px}
.home-context-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;align-items:center}
.home-page .context-copy p{font-size:21px;line-height:1.75;color:#53604c;max-width:460px}
.home-page .context-copy p:first-child{font-size:24px;line-height:1.6;color:#172014;margin-bottom:27px}
.home-page .context-copy p:last-child{margin-bottom:0}
.home-report-preview{display:block;position:relative;transform:rotate(-3deg);transition:transform .25s;margin-bottom:45px}
.home-report-preview img{position:relative;display:block;width:100%;height:auto;border:1px solid #536446;border-radius:3px;box-shadow:0 24px 40px #26332226}
.home-report-back{position:absolute;inset:8px -7px -13px 7px;background:#d8ddcc;border:1px solid #a1af8b;border-radius:3px;transform:rotate(5deg)}
.home-report-link{position:absolute;top:calc(100% + 33px);left:0;right:0;display:flex;justify-content:space-between;font-size:16px;line-height:1.5;border-bottom:1px solid #a7b197;padding-bottom:12px;color:#263820}
.home-report-preview:hover{transform:rotate(0) translateY(-4px)}
.home-page .home-report-preview:focus-visible{outline-color:#263820}
.home-page #services .services-grid{display:block;border-bottom:1px solid var(--line)}
.home-page #services .service{display:grid;grid-template-columns:76px 1fr 1fr;gap:40px;align-items:start;padding:42px 0 46px;border-color:var(--line)}
.home-service-index{font-size:21px;line-height:1.7;color:var(--lime);letter-spacing:-.5px;padding-top:5px}
.home-page #services .service h3{font-size:clamp(33px,3.2vw,46px);line-height:1.2;letter-spacing:-1.6px;margin:0}
.home-page #services .service p{font-size:22px;line-height:1.7;max-width:410px;color:#b9c3b2;margin:0}
.home-page #process{background:#efeee6;color:#172014;border:0}
.home-page #process .section-heading{margin-bottom:65px}
.home-page .process-list{display:block;border-bottom:1px solid #bdc5b0}
.home-page .process-list li{display:grid;grid-template-columns:76px 1fr;gap:40px;border:0;border-top:1px solid #bdc5b0;padding:42px 0 47px}
.home-page .step-number{font:500 38px/1.2 var(--font);letter-spacing:-1.6px;color:#71835d;margin:0;padding-top:0}
.home-page .process-list li>div{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.home-page .process-list h3{font-size:clamp(30px,3vw,42px);line-height:1.2;letter-spacing:-1.4px;max-width:350px;margin:0}
.home-page .process-list p{font-size:21px;line-height:1.75;color:#4d5848;margin:0;max-width:440px}
.home-page .pricing-grid{gap:100px;grid-template-columns:1fr 1fr}
.home-page .price-primary,.home-page .price-secondary{padding-top:35px;border-color:var(--line)}
.home-page .price-primary{border-color:#8b9e61}
.home-page .pricing-grid h3{font-size:32px;line-height:1.3;letter-spacing:-1px;max-width:440px}
.home-page .price{font:500 clamp(85px,8.4vw,118px)/1 var(--font);letter-spacing:-.065em;margin:38px 0 27px}
.home-page .price span{font-size:17px;margin-left:18px;letter-spacing:0;white-space:nowrap;color:#b9c3b2}
.home-page .pricing-grid article>p:not(.price){font-size:21px;line-height:1.75;max-width:450px;color:#b9c3b2}
.home-page .price-primary .button{margin-top:15px;font-size:15px}
.home-page .pricing-page-link{justify-content:flex-start;margin-top:55px}
.home-page .pricing-page-link .text-link{font-size:16px}
.home-page #questions{padding-top:125px;padding-bottom:130px}
.home-page .faq-grid{grid-template-columns:.85fr 1.15fr;gap:110px}
.home-page .faq-grid h2{max-width:380px}
.home-page .faq-list summary{font-size:22px;line-height:1.5;padding:27px 0;gap:24px;letter-spacing:-.4px}
.home-page .faq-answer{padding:0 28px 28px 0}
.home-page .faq-answer p{font-size:20px;line-height:1.75;color:#b9c3b2}
.home-page .discovery{background:var(--lime);color:#14200d;border:0;overflow:hidden}
.home-page .discovery-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:48px 100px;align-items:start}
.home-page .discovery-grid>div:first-child{display:contents}
.home-page .discovery h2{grid-column:1/-1;max-width:1100px;font-size:clamp(66px,8.6vw,120px);line-height:1.03;letter-spacing:-.065em;margin-bottom:16px}
.home-page .discovery h2 span{color:inherit}
.home-page .discovery-grid>div:first-child>p:last-child{font-size:22px;line-height:1.7;color:#2f4123;max-width:550px;margin:0;padding-top:29px;border-top:1px solid #14200d55}
.home-page .booking-panel{border:0;border-top:1px solid #14200d55;border-radius:0;padding:29px 0 0}
.home-page .booking-symbol{display:none}
.home-page .booking-panel h3{font-size:30px;line-height:1.3;letter-spacing:-.9px;margin:0 0 23px}
.home-page .booking-panel .button{width:auto;min-width:270px;font-size:15px;background:#14200d;border-color:#14200d;color:var(--lime)}
.home-page .booking-link[aria-disabled=true]{background:transparent;color:#2f4123;border-color:#667e2a}
.home-page .booking-status{font-size:15px;color:#3d522e}
.home-page .discovery a:focus-visible{outline-color:#14200d}
@media(min-width:1500px){.home-page main>.section .container,.home-page .hero .container{max-width:1460px}.home-page .hero h1{font-size:166px}.home-page .hero-grid{padding-top:110px;padding-bottom:120px}}
@media(max-width:1050px){.home-page .hero-grid{padding:85px 0 95px}.home-page main>.section{padding:110px 0}.home-context-grid{gap:65px}.home-page .context h2{max-width:850px}.home-page #services .service,.home-page .process-list li{grid-template-columns:55px 1fr;gap:28px}.home-page #services .service h3{grid-column:2}.home-page #services .service p{grid-column:2;max-width:600px}.home-page #services .service{row-gap:18px}.home-service-index{grid-row:1/3}.home-page .process-list li>div{grid-template-columns:1fr;gap:24px}.home-page .process-list h3{max-width:600px}.home-page .process-list p{max-width:650px}.home-page .pricing-grid{gap:60px}.home-page .price span{display:block;margin:16px 0 0}.home-page .faq-grid{gap:55px}.home-page .discovery-grid{gap:42px 60px}.home-page .discovery h2{font-size:clamp(65px,8.7vw,94px)}.home-page #questions{padding:110px 0}}
@media(max-width:700px){.home-page .hero-grid{padding:66px 0 72px}.home-page .hero h1{font-size:clamp(52px,13.8vw,92px);line-height:1.05;letter-spacing:-.065em;margin:0 0 27px}.home-page .hero-description{font-size:20px;line-height:1.7;max-width:none}.home-page .hero-actions{flex-direction:column;gap:17px;margin-top:29px}.home-page .hero-actions .button{font-size:15px;min-height:54px;padding:16px 21px}.home-page .hero-actions .text-link{font-size:15px}.home-page main>.section{padding:78px 0}.home-page main h2{font-size:clamp(42px,11.1vw,66px);line-height:1.1;letter-spacing:-.055em}.home-page .section-heading{margin-bottom:40px}.home-page .context h2{font-size:clamp(43px,11.5vw,68px);margin-bottom:35px}.home-context-grid{grid-template-columns:1fr;gap:58px}.home-page .context-copy p{font-size:19px;line-height:1.75}.home-page .context-copy p:first-child{font-size:22px;line-height:1.65;margin-bottom:23px}.home-report-preview{width:94%;margin:0 auto 57px}.home-report-link{font-size:15px;top:calc(100% + 29px)}.home-page #services .service{grid-template-columns:35px minmax(0,1fr);gap:16px 17px;padding:30px 0 34px}.home-service-index{font-size:18px;padding-top:2px}.home-page #services .service h3{font-size:clamp(26px,7.7vw,30px);letter-spacing:-1px}.home-page #services .service p{font-size:20px;line-height:1.7}.home-page #process .section-heading{margin-bottom:40px}.home-page .process-list li{grid-template-columns:35px 1fr;gap:17px;padding:30px 0 34px}.home-page .step-number{font-size:25px;letter-spacing:-1px;margin-top:3px}.home-page .process-list li>div{gap:18px}.home-page .process-list h3{font-size:30px;line-height:1.2;letter-spacing:-1px}.home-page .process-list p{font-size:19px;line-height:1.75}.home-page .pricing-grid{grid-template-columns:1fr;gap:45px}.home-page .price-primary,.home-page .price-secondary{padding-top:27px}.home-page .pricing-grid h3{font-size:29px}.home-page .price,.home-page .price-secondary .price{font-size:88px;margin:28px 0 24px}.home-page .price span{display:inline;font-size:16px;margin-left:17px}.home-page .pricing-grid article>p:not(.price){font-size:19px;line-height:1.75}.home-page .pricing-page-link{margin-top:36px}.home-page .pricing-page-link .text-link{font-size:15px}.home-page #questions{padding:78px 0}.home-page .faq-grid{grid-template-columns:1fr;gap:37px}.home-page .faq-grid h2{max-width:330px}.home-page .faq-list summary{font-size:20px;line-height:1.5;padding:24px 0}.home-page .faq-answer{padding:0 15px 24px 0}.home-page .faq-answer p{font-size:19px;line-height:1.75}.home-page .discovery-grid{grid-template-columns:1fr;gap:33px}.home-page .discovery h2{font-size:clamp(49px,13vw,78px);line-height:1.07;letter-spacing:-.06em;overflow-wrap:normal;margin:0}.home-page .discovery-grid>div:first-child>p:last-child{font-size:20px;line-height:1.75;padding-top:25px}.home-page .booking-panel{padding-top:26px}.home-page .booking-panel h3{font-size:29px}.home-page .booking-panel .button{font-size:15px;min-width:0;width:100%}.home-page .booking-status{font-size:14px}}
@media(prefers-reduced-motion:reduce){.home-report-preview{transition:none}.home-report-preview:hover{transform:rotate(-3deg)}}

/* The report is the main offer; consultation remains an optional footer route. */
.home-report-section{color:inherit}.home-report-section h3 span{font-size:.65em;white-space:nowrap}.home-report-section:hover h3{text-decoration:underline;text-underline-offset:.15em;text-decoration-thickness:1px}
.home-report-offer{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:80px;align-items:center}.home-report-offer>div>p:not(.price){max-width:580px;font-size:23px;line-height:1.7;margin-top:30px}.home-report-purchase .price{font-size:clamp(80px,8vw,120px);font-variant-numeric:tabular-nums;line-height:1.15;margin:0 0 32px}.home-report-purchase .price span{font-size:19px;margin-left:20px}.home-report-purchase .text-link,.home-report-closing .text-link{display:flex;width:fit-content;margin-top:25px}.home-report-closing p{font-size:24px;line-height:1.7;margin:0 0 30px}.home-page .discovery .text-link{color:var(--bg)}
@media(max-width:700px){.home-report-offer{grid-template-columns:1fr;gap:35px}.home-report-offer>div>p:not(.price),.home-report-closing p{font-size:20px}.home-report-purchase .price{font-size:86px}.home-report-purchase .button{width:100%}.home-report-purchase .price span{font-size:16px}}
