:root{--ink:#172820;--paper:#f5f4ed;--white:#fffefa;--muted:#59675d;--line:#d9ddd3;--green:#244c3b;--sage:#dce6d9;--accent:#b9cfad;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}.site-header{position:sticky;top:0;z-index:30;background:rgba(245,244,237,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{min-height:85px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{font-size:29px;letter-spacing:-1.8px;font-weight:750}.brand b{font-weight:750;color:#5e8368}.nav{display:flex;align-items:center;gap:34px}.nav a{font-size:14px;font-weight:700;letter-spacing:.10em;text-transform:uppercase}.nav a:not(.button):hover{color:#63876a}.button{display:inline-flex;align-items:center;gap:26px;justify-content:space-between;background:var(--green);color:white!important;border:1px solid var(--green);padding:16px 19px;font-size:14px!important;font-weight:700;letter-spacing:.09em;text-transform:uppercase;transition:transform .2s,background .2s}.button:hover{background:#37664d;transform:translateY(-1px)}.button.light{background:var(--white);color:var(--ink)!important;border-color:var(--white)}.button.outline{background:transparent;color:var(--ink)!important;border-color:var(--ink)}.button .arrow{font-size:19px;font-weight:400;line-height:1}.menu-toggle{display:none;background:none;border:0;font-size:27px;color:var(--ink)}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:13px;font-weight:750}.hero{padding:100px 0 88px}.hero-grid{display:grid;grid-template-columns:1.25fr .65fr;align-items:end;gap:48px}.hero h1{font-size:clamp(65px,8.5vw,126px);line-height:.97;letter-spacing:-.07em;font-weight:540;margin:29px 0 0;max-width:950px}.hero h1 em{font-weight:400;font-style:normal;color:#67866e}.hero-side{border-left:1px solid #c5cec2;padding-left:31px;padding-bottom:7px}.hero-side p{font-size:18px;line-height:1.65;margin:0 0 28px;color:#3e4c43}.visual-panel{height:370px;background:var(--green);overflow:hidden;position:relative}.visual-panel .rings{position:absolute;width:700px;height:700px;right:-130px;top:-155px;border:1px solid #718c77;border-radius:50%}.visual-panel .rings:before,.visual-panel .rings:after{content:"";position:absolute;border:1px solid #718c77;border-radius:50%;inset:65px}.visual-panel .rings:after{inset:140px}.visual-panel .visual-label{position:absolute;bottom:34px;left:40px;color:#e5ebe0;text-transform:uppercase;font-size:13px;letter-spacing:.22em}.visual-panel .visual-big{position:absolute;right:60px;bottom:-31px;font-size:200px;line-height:1;color:rgba(230,239,227,.13);letter-spacing:-.1em}.section{padding:104px 0;border-bottom:1px solid var(--line)}.section-head{display:grid;grid-template-columns:260px 1fr;gap:65px;margin-bottom:55px}.section h2,.cta h2{font-size:clamp(42px,5.5vw,79px);font-weight:540;line-height:1.08;letter-spacing:-.058em;margin:0;max-width:900px}.section-intro{font-size:19px;line-height:1.7;max-width:800px;color:#48574c;margin:0}.kicker{padding-top:13px}.service-list{border-top:1px solid var(--line)}.service-item{display:grid;grid-template-columns:75px 1fr 1fr 30px;gap:20px;align-items:start;padding:30px 0;border-bottom:1px solid var(--line)}.service-item .num{color:#738475;font-size:15px;padding-top:7px}.service-item h3{font-size:clamp(25px,3vw,39px);font-weight:500;letter-spacing:-.04em;margin:0}.service-item p{font-size:17px;line-height:1.7;color:var(--muted);max-width:420px;margin:3px 0}.service-item .arr{font-size:25px}.dark{background:var(--green);color:var(--white)}.dark .eyebrow{color:#c6d6c4}.dark .section-intro,.dark p{color:#d2dfd2}.step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.step{padding-top:24px;border-top:1px solid #789081}.step .number{font-size:14px;letter-spacing:.16em;color:#bfd0bc}.step h3{font-size:25px;line-height:1.2;font-weight:500;letter-spacing:-.03em;min-height:66px}.step p{font-size:16px;line-height:1.75}.outcomes{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line)}.outcome{padding:27px 28px 27px 0;border-bottom:1px solid var(--line);font-size:21px;letter-spacing:-.025em}.outcome:before{content:'↗';font-size:17px;margin-right:23px;color:#668974}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:70px}.two-col p{font-size:17px;line-height:1.8;color:var(--muted)}.statement{font-size:clamp(32px,4vw,58px);letter-spacing:-.055em;line-height:1.16;margin:0}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{font-size:20px;cursor:pointer;display:flex;justify-content:space-between;gap:16px;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:26px}.faq details[open] summary:after{content:'−'}.faq p{font-size:16px;line-height:1.7;color:var(--muted);max-width:830px}.cta{padding:110px 0;background:#dfe8da}.cta-grid{display:grid;grid-template-columns:1fr 260px;gap:60px;align-items:end}.cta p{font-size:18px;line-height:1.7;max-width:660px}.footer{background:#172820;color:#eaf0e6;padding:72px 0 30px}.footer-grid{display:flex;justify-content:space-between;gap:60px;flex-wrap:wrap}.footer .brand{font-size:38px}.footer p{color:#c8d7c9;max-width:380px;font-size:17px;line-height:1.75}.footer-links{display:flex;gap:90px}.footer-links div{display:flex;flex-direction:column;gap:15px}.footer-links b{font-size:13px;letter-spacing:.17em;text-transform:uppercase;margin-bottom:5px;color:#9fb69f}.footer-links a{font-size:16px}.footer-bottom{border-top:1px solid #3e5548;margin-top:75px;padding-top:24px;display:flex;justify-content:space-between;color:#b1c2b1;font-size:14px}.detail-hero{padding:95px 0 75px}.detail-hero h1{font-size:clamp(60px,8vw,120px);line-height:1;letter-spacing:-.072em;max-width:1020px;font-weight:520;margin:27px 0}.detail-hero p{font-size:21px;line-height:1.65;max-width:680px;color:var(--muted)}.breadcrumb{font-size:14px;color:var(--muted)}.detail-grid{display:grid;grid-template-columns:260px 1fr;gap:65px}.detail-grid h2{font-size:clamp(33px,4.4vw,61px);letter-spacing:-.05em;font-weight:520;line-height:1.15;margin:0 0 25px}.detail-grid p{font-size:18px;color:var(--muted);line-height:1.7}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px 50px;margin-top:40px}.feature{border-top:1px solid var(--line);padding-top:22px}.feature h3{font-size:24px;font-weight:500;letter-spacing:-.03em;margin:0 0 12px}.feature p{font-size:17px;margin:0}.note{font-size:14px;color:var(--muted);line-height:1.6}.contact-mail{font-size:clamp(28px,4.6vw,62px);letter-spacing:-.045em;border-bottom:2px solid currentColor;display:inline-block;overflow-wrap:anywhere}@media(max-width:900px){.wrap{width:min(100% - 42px,1200px)}.nav{display:none;position:absolute;top:84px;left:0;right:0;background:var(--paper);padding:24px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.nav.open{display:flex}.menu-toggle{display:block}.hero-grid,.section-head,.two-col,.detail-grid,.cta-grid{grid-template-columns:1fr;gap:25px}.hero{padding:72px 0}.hero h1{font-size:clamp(58px,10vw,90px)}.hero-side{max-width:600px}.section{padding:75px 0}.step-grid{grid-template-columns:1fr 1fr}.service-item{grid-template-columns:40px 1fr 25px}.service-item p{grid-column:2;grid-row:2}.service-item .arr{grid-column:3;grid-row:1}.kicker{padding:0}.visual-panel{height:300px}}@media(max-width:580px){.step-grid,.outcomes,.feature-grid{grid-template-columns:1fr}.hero h1{font-size:56px}.section h2,.cta h2{font-size:43px}.service-item h3{font-size:29px}.footer-links{gap:40px}.footer-bottom{flex-direction:column;gap:8px}.visual-panel .visual-big{font-size:130px}.header-inner{min-height:75px}.nav{top:74px}.brand{font-size:26px}}

/* Typography refinement: natural letter spacing for display-sized headings. */
.hero h1, .detail-hero h1, .section h2, .cta h2, .detail-grid h2, .service-item h3, .step h3, .feature h3, .statement, .contact-mail { letter-spacing: normal; }

/* Readability pass: larger supporting type across all three pages. */
.nav a, .button { font-size: 16px !important; }
.eyebrow, .visual-panel .visual-label, .footer-links b { font-size: 15px; }
.service-item .num, .step .number, .breadcrumb, .note, .footer-bottom { font-size: 16px; }
.service-item p, .two-col p, .feature p, .footer p { font-size: 19px; }
.step p, .faq p, .footer-links a { font-size: 18px; }
.hero-side p, .detail-grid p, .cta p { font-size: 20px; }
.section-intro { font-size: 21px; }
.detail-hero p { font-size: 22px; }
/* Only the highlighted phrase on the homepage receives tighter tracking. */
.hero h1 em { letter-spacing: -0.035em; }
