*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit}a:focus-visible,summary:focus-visible{outline:3px solid #e34b29;outline-offset:4px}.skip{position:absolute;left:12px;top:-100px;background:#fff;color:#111;padding:12px;z-index:50}.skip:focus{top:12px}.site-footer{padding:32px clamp(20px,5vw,72px);font:14px/1.5 Arial,sans-serif;border-top:1px solid currentColor}.site-footer p{margin:0 0 12px}.source-links{display:flex;gap:8px 18px;flex-wrap:wrap}.source-links span{font-weight:700}.source-links a{text-underline-offset:3px}.error-page{min-height:80vh;display:grid;place-content:center;padding:24px;font:18px/1.5 Arial,sans-serif}.error-page h1{font-size:clamp(32px,6vw,64px);margin:0 0 12px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body.home{background:#f8f5ec;color:#27392c;font:17px/1.55 'Trebuchet MS',Arial,sans-serif}
.home h1,.home h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.05em;line-height:1.1}.home a{text-underline-offset:4px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#586b42}
.home-header{min-height:86px;padding:20px clamp(24px,6vw,95px);display:flex;align-items:center;justify-content:space-between;gap:25px;background:#f8f5ec}.home-logo{text-decoration:none;font:700 24px Georgia,serif;letter-spacing:-.065em}.home-logo span{color:#73864e}.home-header nav{display:flex;gap:28px;font-size:14px;font-weight:700}.home-header nav a{text-decoration:none}
.home-hero{min-height:610px;position:relative;background:#e5ddc7;overflow:hidden;display:grid;grid-template-columns:1fr 180px;align-items:end;padding:80px clamp(24px,8vw,130px) 90px}.hero-orb{position:absolute;width:650px;height:650px;border-radius:50%;background:#bec99e;right:16%;top:-360px;box-shadow:250px 180px 0 #d5bd94}.hero-inner{position:relative;max-width:920px}.hero-inner h1{font-size:clamp(65px,7.5vw,124px);max-width:900px;margin:25px 0 25px}.hero-inner>p:not(.eyebrow){max-width:590px;font-size:22px;margin:0 0 35px}.pill-link{display:inline-flex;gap:25px;background:#27392c;color:#fff;text-decoration:none;border-radius:99px;padding:14px 21px;font-weight:700}.hero-side{position:relative;align-self:end;border-top:1px solid #6e7d5e;padding-top:12px;font-size:13px}.hero-side span{font-weight:800}.hero-side p{margin:15px 0 0}
.home-section{padding:100px clamp(24px,8vw,130px)}.intro{max-width:880px}.intro h2{font-size:clamp(45px,5.5vw,76px);margin:18px 0}.intro>p:last-child{max-width:650px;color:#5b6a55;font-size:19px}.tile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:48px}.tile-grid article{min-height:310px;background:#e9eee0;border-radius:40px 40px 8px 40px;padding:27px 27px 35px;display:flex;flex-direction:column}.tile-grid article:nth-child(2){background:#efe4cc;border-radius:8px 40px 40px 40px}.tile-grid article:nth-child(3){background:#e0e7d3;border-radius:40px 8px 40px 40px}.tile-no{display:block;color:#718651;font-size:13px;font-weight:800}.tile-grid h3{font:400 32px/1.1 Georgia,serif;margin:auto 0 12px}.tile-grid p{margin:0;color:#526450}
.photo-story{display:grid;grid-template-columns:1fr 1fr;min-height:470px;background:#283b2d;color:#fff}.photo-story figure{margin:0;position:relative;min-height:470px}.photo-story img{width:100%;height:100%;object-fit:cover;filter:saturate(.75)}.photo-story figcaption{position:absolute;left:20px;bottom:20px;background:#283b2dda;color:#fff;padding:5px 10px;font-size:11px}.photo-story>div{padding:80px clamp(26px,6vw,100px);align-self:center}.photo-story .eyebrow{color:#c1cd9b}.photo-story h2{font-size:clamp(43px,4.8vw,67px);margin:20px 0}.photo-story p:last-child{max-width:540px;color:#d9e2d4}
.steps-section{background:#ece8dc}.soft-steps{padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:45px 0 0}.soft-steps li{border-top:1px solid #738467;padding:20px 0}.soft-steps li span{color:#748952;font-size:13px}.soft-steps li strong{display:block;font:400 28px/1.2 Georgia,serif;margin:26px 0 11px}.soft-steps li p{margin:0;color:#5b6a55}
.home-faq{padding:85px clamp(24px,8vw,130px)}.home-faq h2{font-size:clamp(42px,5vw,65px)}.home-faq>div{max-width:900px}.home-faq details{border-top:1px solid #a7ae9c;padding:17px 0}.home-faq summary{cursor:pointer;font-weight:700}.home-faq details p{margin:10px 0;color:#5b6a55}
.home-contact{text-align:center;padding:95px 24px;background:#d4dfa8}.home-contact h2{font-size:clamp(50px,6vw,82px);margin:20px 0}.home-contact>p:not(.eyebrow){max-width:580px;margin:0 auto 24px}.contact-phone{display:block;width:max-content;max-width:100%;margin:0 auto;color:#27392c;font:400 clamp(30px,5vw,60px)/1.1 Georgia,serif;text-decoration:none;border-bottom:2px solid #27392c}.contact-phone span{font-size:.6em}.home-contact .mail{display:inline-block;margin-top:20px;font-weight:700}.home .site-footer{background:#f8f5ec;color:#4f5f4a;border-color:#c6cbbb}
@media(max-width:850px){.home-hero{grid-template-columns:1fr;min-height:550px}.hero-side{display:none}.tile-grid,.soft-steps{grid-template-columns:1fr}.tile-grid article{min-height:220px}.photo-story{grid-template-columns:1fr}.photo-story figure{min-height:320px;height:320px}}
@media(max-width:560px){.home-header{min-height:72px}.home-logo{font-size:19px}.home-header nav{gap:10px;font-size:11px}.home-header nav a:first-child{display:none}.home-hero{padding:74px 24px 66px;min-height:570px}.hero-inner h1{font-size:clamp(53px,13vw,73px)}.hero-inner>p:not(.eyebrow){font-size:18px}.hero-orb{width:390px;height:390px;right:-80px;top:-220px;box-shadow:130px 150px 0 #d5bd94}.home-section,.home-faq{padding:65px 24px}.photo-story>div{padding:55px 24px}}

/* Independent brand finishing */
.brand-icon{width:40px;height:40px;flex:none;display:inline-block;vertical-align:middle;margin-right:10px;border-radius:9px}
.practical{margin:clamp(32px,5vw,72px) auto;padding:clamp(26px,5vw,56px);max-width:1050px;background:#fff;border:1px solid #d9d9d2;border-left:6px solid currentColor;color:inherit}
.practical small{display:block;text-transform:uppercase;letter-spacing:.12em;font-weight:700;margin-bottom:14px}
.practical h2{font-size:clamp(1.6rem,3vw,2.7rem);line-height:1.12;margin:0 0 16px;max-width:18ch}
.practical p{font-size:1.05rem;line-height:1.65;margin:0;max-width:65ch}
.coverage{display:block;font-weight:700;font-size:.9rem;letter-spacing:.03em;margin-top:22px}
@media(max-width:600px){.brand-icon{width:32px;height:32px;margin-right:6px}.practical{margin:32px 16px;padding:24px}}
