@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--paper:#f7f6f0;--ink:#223e36;--muted:#626c61;--line:#d9ddd1;--lime:#d5ec87;--orange:#bd4d31}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.shell{width:min(1280px,90%);margin:auto}.skip{position:fixed;top:-80px;background:var(--lime);padding:12px;z-index:100}.skip:focus{top:10px}.top{position:sticky;top:0;z-index:20;background:#f7f6f0f5;border-bottom:1px solid var(--line)}.navigation{height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{font-family:Manrope,sans-serif;font-size:34px;font-weight:800;letter-spacing:-2px}.logo span{color:var(--orange)}.navlinks{display:flex;align-items:center;gap:32px;font-size:14px}.navlinks>a:not(.btn):hover{color:var(--orange)}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:15px 23px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:5px;font-size:14px;font-weight:600;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-3px);background:#36584b}.btn.lime{background:var(--lime);color:var(--ink);border-color:var(--lime)}.btn.lime:hover{background:#e0f3a4}.btn.outline{background:transparent;color:var(--ink);border-color:var(--line)}.menu{display:none}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:700;margin:0 0 24px}.eyebrow .dot{display:inline-block;width:7px;height:7px;background:var(--orange);border-radius:50%;margin-right:10px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif;font-weight:500;letter-spacing:-.055em;line-height:1.08}h1{font-size:clamp(58px,6.5vw,94px);margin-bottom:28px}h1 em{font-style:normal;color:#7c8971}h2{font-size:clamp(36px,4vw,58px)}h3{font-size:28px}.hero{padding:78px 0 58px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:65px}.intro{max-width:480px;color:var(--muted);font-size:18px;line-height:1.8}.actions{display:flex;gap:16px;align-items:center;margin:30px 0 20px;flex-wrap:wrap}.textlink{font-size:14px;border-bottom:1px solid var(--ink);padding:7px 0}.small{font-size:12px;color:var(--muted)}.visual{position:relative;background:#e8ebdf;border-radius:12px;padding:34px;min-height:490px;overflow:hidden}.visual:before{content:'';position:absolute;width:400px;height:400px;border:1px solid #c8d0be;border-radius:50%;left:110px;top:90px}.visual:after{content:'';position:absolute;width:300px;height:300px;border:1px solid #c8d0be;border-radius:50%;left:160px;top:140px}.visual>*{position:relative;z-index:1}.visualtop{display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:1px}.live{display:flex;align-items:center;gap:7px}.live:before{content:'';width:6px;height:6px;background:#527552;border-radius:50%}.switch{display:flex;background:#dce1d1;padding:4px;border-radius:5px;margin:28px auto;width:max-content}.switch button{border:0;background:none;padding:8px 20px;border-radius:3px;color:var(--ink);font-size:12px}.switch button[aria-pressed=true]{background:var(--paper);box-shadow:0 2px 5px #243e3610}.flow{padding:12px 0}.flowrow{display:flex;align-items:center;gap:14px;background:#fdfcf7;border:1px solid #d8dece;border-radius:7px;padding:16px 18px;box-shadow:0 8px 20px #253b3410;margin:auto;width:88%;transition:transform .5s}.flowrow:nth-of-type(3){transform:translateX(12px)}.flowrow:nth-of-type(5){transform:translateX(-8px)}.flowicon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e8eddc;font-size:16px}.flowtext{flex:1;font-size:13px;line-height:1.4}.flowtext small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.tick{color:#527552;font-size:13px}.connector{height:23px;border-left:1px dashed #6b8461;margin-left:50%}.visualfoot{margin:24px 0 0;font-size:11px;display:flex;justify-content:space-between;gap:12px}.herofoot{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:22px 0 30px;font-size:11px;color:var(--muted);letter-spacing:.5px}.herofoot span:last-child{color:var(--ink)}.section{padding:100px 0}.sectionhead{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-bottom:50px}.sectionhead h2{margin:0}.sectionhead>p{align-self:end;color:var(--muted);max-width:440px;margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service{border-top:1px solid var(--ink);padding:25px 8px 0 0}.number{font-size:12px;color:var(--muted);display:block;margin-bottom:42px}.service p{color:var(--muted);font-size:15px}.service h3{min-height:60px}.service ul{list-style:none;padding:14px 0;border-top:1px solid var(--line);font-size:13px}.service li{padding:7px 0}.service li:before{content:'↗';margin-right:12px;color:#6c805b}.service .textlink{display:inline-block;margin-top:12px}.dark{background:var(--ink);color:var(--paper);border-radius:12px;padding:65px;display:grid;grid-template-columns:1fr 1fr;gap:80px}.dark h2{font-size:clamp(38px,4vw,56px)}.dark .eyebrow{color:var(--lime)}.dark p{color:#d3dcd3}.steps{border-top:1px solid #5a6c60}.step{display:grid;grid-template-columns:35px 1fr;gap:15px;padding:24px 0;border-bottom:1px solid #5a6c60}.step>span{font-size:12px;color:var(--lime)}.step h3{font-size:23px;margin-bottom:10px}.step p{font-size:14px;margin:0}.about{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.portrait{min-height:420px;background:#dddcca;display:flex;flex-direction:column;justify-content:space-between;padding:40px;position:relative;border-radius:8px}.monogram{font-family:Georgia,serif;font-size:160px;line-height:1;color:#4c6555;font-style:italic;letter-spacing:-20px;align-self:center}.portrait .caption{font-size:12px;display:flex;justify-content:space-between}.about p{color:var(--muted)}.signature{font-family:Georgia,serif;font-style:italic;font-size:27px;margin-top:30px}.family{background:#e9eddf;padding:45px;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:40px}.family h3{font-size:32px;margin:0 0 12px}.family p{margin:0;color:var(--muted);max-width:650px}.faq{display:grid;grid-template-columns:1fr 1fr;gap:80px}details{border-top:1px solid var(--line);padding:20px 0}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-weight:500}summary:after{content:'+';font-size:23px;line-height:1}details[open] summary:after{content:'−'}details p{font-size:14px;color:var(--muted);margin:18px 25px 0 0}.contact{background:#e2e9cd;padding:75px;border-radius:12px;display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact h2{font-size:clamp(40px,4.7vw,68px)}.contact p{color:#53604a}.contactform{display:grid;gap:12px}.contactform label{font-size:12px}.contactform input,.contactform textarea{width:100%;border:0;border-bottom:1px solid #9ca88e;background:transparent;border-radius:0;padding:10px 0;color:var(--ink)}.contactform textarea{resize:vertical;min-height:90px}.contactform .btn{margin-top:12px}.contactform .small{margin:0}footer{padding:45px 0 25px}.footerrow{display:flex;justify-content:space-between;gap:30px;align-items:center}.footerrow p{font-size:12px;color:var(--muted);margin:0}.footerbottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:30px;padding-top:20px;font-size:11px;color:var(--muted)}.reveal{transition:opacity .7s,transform .7s}.reveal.pending{opacity:0;transform:translateY(22px)}@media(min-width:900px){.visual{animation:enter 1s both}@keyframes enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}}@media(max-width:950px){.hero{gap:30px}.visual{padding:23px}.navlinks{gap:18px}.dark,.contact{padding:40px;gap:40px}.about{gap:40px}.section{padding:70px 0}}@media(max-width:720px){.navigation{height:74px}.menu{display:block;border:1px solid var(--line);background:none;padding:8px 14px;border-radius:4px}.navlinks{display:none;position:absolute;top:73px;left:0;right:0;background:var(--paper);padding:24px 5%;border-bottom:1px solid var(--line);align-items:stretch}.navlinks.open{display:flex;flex-direction:column}.hero{grid-template-columns:1fr;padding-top:45px;gap:35px}h1{font-size:clamp(54px,11vw,76px)}.hero .intro{font-size:16px}.visual{min-height:440px;padding:26px}.herofoot{gap:20px;flex-wrap:wrap}.herofoot span:nth-child(2){display:none}.sectionhead,.about,.dark,.faq,.contact{grid-template-columns:1fr;gap:30px}.services{grid-template-columns:1fr;gap:40px}.service h3{min-height:0}.number{margin-bottom:20px}.service ul{display:flex;flex-wrap:wrap;gap:0 20px}.sectionhead{margin-bottom:36px}.dark,.contact{padding:30px 23px}.portrait{min-height:330px}.family{padding:30px 24px;align-items:flex-start;flex-direction:column;gap:24px}.family .btn{flex-shrink:0}.footerrow{align-items:flex-start;flex-direction:column;gap:10px}.footerbottom{gap:25px}.section{padding:60px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal.pending{opacity:1;transform:none}}
