@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--paper:#f5f5ee;--ink:#17201c;--muted:#677168;--lime:#d8f46a;--line:#d9ded3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}header{max-width:1440px;margin:auto;padding:25px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-family:Manrope,sans-serif;font-size:23px;font-weight:800;letter-spacing:-1px}.brand img{width:43px;height:43px;border-radius:11px;object-fit:cover}.brand-light{font-weight:500}.brand small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:2.2px;margin-top:4px}nav{display:flex;gap:30px;font-size:13px}nav a:hover,.text-link:hover{color:#628016}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:17px 23px;border:1px solid var(--ink);background:var(--ink);color:white;border-radius:5px;font-weight:500;font-size:14px;transition:transform .2s,background .2s}.button:hover{background:#344438;transform:translateY(-2px)}.button span{font-size:21px}.small{padding:11px 19px;font-size:12px}.menu{display:none}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;padding:58px 5% 44px;gap:50px}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;display:flex;align-items:center;gap:8px}.eyebrow i{width:7px;height:7px;border-radius:50%;background:#859d42}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-size:clamp(42px,5.1vw,76px);line-height:1.12;letter-spacing:-3.8px;font-weight:650;margin:26px 0 24px}em{font-style:normal;color:#758a3d}p{font-size:15px;line-height:1.8;color:var(--muted)}.hero-copy>p{max-width:420px}.actions{display:flex;align-items:center;gap:25px;margin:30px 0 42px}.text-link{font-size:12px;border-bottom:1px solid #a0a99a;padding:10px 0;display:flex;gap:15px}.hero-foot{border-top:1px solid var(--line);padding-top:19px;display:flex;justify-content:space-between;font-size:10px;color:var(--muted);gap:10px}.hero-foot span:first-child{font-size:9px;letter-spacing:1px}.hero-art{min-height:530px;border-radius:13px;background:var(--ink);position:relative;overflow:hidden;color:#f5f5ee}.grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(black,transparent)}.art-top,.art-bottom{position:absolute;left:30px;right:30px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.3px}.art-top{top:27px;color:#b8c0b3}.art-bottom{bottom:28px;align-items:end}.art-bottom>span:first-child{font-size:20px;line-height:1.2;font-weight:500;letter-spacing:-.4px}.coordinates{font-size:8px;line-height:1.9;color:#a3ad9c}.orbit{position:absolute;width:400px;height:400px;border:1px solid #afca6f40;border-radius:50%;left:17%;top:13%;transform:rotate(-35deg) scaleX(.72)}.orbit-two{transform:rotate(40deg) scaleX(.72);width:470px;height:470px;left:5%;top:7%}.destination{position:absolute;top:24%;left:23%;width:245px;height:245px;border-radius:40px;background:var(--lime);transform:rotate(-13deg);display:grid;place-items:center;box-shadow:16px 20px 0 #b6d250,27px 35px 60px #0006}.destination span{color:var(--ink);font-size:215px;line-height:1;font-weight:500;transform:rotate(13deg) translateY(-5px)}.pin{position:absolute;display:flex;align-items:center;gap:7px;font-size:8px;letter-spacing:1.3px}.pin i{width:8px;height:8px;border:2px solid var(--lime);border-radius:50%}.pin-start{bottom:27%;left:9%}.pin-end{right:8%;top:20%}.floating{position:absolute;right:7%;bottom:24%;display:flex;align-items:center;gap:12px;padding:17px 21px;border:1px solid #5d6a53;background:#283127f5;border-radius:9px;font-size:13px;box-shadow:0 10px 30px #0002}.floating>span{font-size:31px;color:var(--lime)}.floating small{display:block;color:#aeb9a4;font-size:10px;margin-top:5px}.service-strip{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#e9eddf;border-block:1px solid var(--line);padding:24px 5%;font-size:10px;letter-spacing:1.5px}.service-strip b{font-size:22px;font-weight:400;color:#758a3d}.section{padding:90px 5%;max-width:1440px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:35px}h2{font-size:clamp(30px,3.3vw,48px);line-height:1.2;letter-spacing:-1.9px;font-weight:600;margin-top:19px}.section-heading>p{max-width:340px;font-size:13px}.filters{display:flex;gap:9px;margin:34px 0 26px}.filters button{border:1px solid var(--line);border-radius:30px;padding:10px 18px;background:transparent;font-size:11px;color:var(--muted)}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px;min-height:252px;display:flex;flex-direction:column;transition:background .2s}.service-card:hover{background:#edf0e3}.service-card .card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:29px;color:#8b957e;font-size:10px}.service-icon{font-size:27px;color:var(--ink);font-family:monospace}.service-card h3{font-size:18px;letter-spacing:-.5px;margin-bottom:10px}.service-card p{font-size:12px;line-height:1.75}.service-card button{margin-top:20px;align-self:flex-start;background:none;border:0;padding:0;color:var(--ink);font-size:11px;font-weight:600}.service-card button span{margin-left:15px}.about{display:grid;grid-template-columns:1fr 1.05fr;gap:85px;padding-top:25px}.about-art{background:#e4e9d8;border-radius:10px;padding:32px;position:relative;min-height:510px;overflow:hidden}.big-arrow{font-size:350px;position:absolute;left:12%;top:0;color:#819a47;line-height:1.2;transform:rotate(-8deg)}.about-caption{position:absolute;bottom:34px;font:500 28px/1.3 Manrope;letter-spacing:-1px}.about-copy h2{font-size:35px}.about-copy>p{font-size:13px;margin:22px 0}.principle{display:flex;gap:20px;padding:19px 0;border-top:1px solid var(--line)}.principle>span{font-size:10px;color:#7b895e}.principle h3{font-size:14px;margin-bottom:5px}.principle p{font-size:12px}.approach{background:var(--ink);color:var(--paper);max-width:none}.approach>.section-heading,.steps{max-width:1296px;margin-left:auto;margin-right:auto}.approach p{color:#acb7a7}.approach .eyebrow{color:var(--lime)}.steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:60px;gap:35px}.steps article{border-top:1px solid #5e6a51;padding-top:22px}.steps article>span{font-size:9px;letter-spacing:1.2px;color:var(--lime)}.steps h3{font-size:19px;margin:24px 0 12px;font-weight:500;letter-spacing:-.5px}.steps p{font-size:12px}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:80px}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{cursor:pointer;font-size:15px;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq summary:after{content:'+';font-size:20px;color:#839449}.faq details[open] summary:after{content:'−'}.faq details p{font-size:13px;margin-top:15px}.contact{background:var(--lime);border-radius:14px;display:grid;grid-template-columns:1fr 1fr;gap:90px;max-width:1296px;margin:0 5% 70px}.contact h2{font-size:clamp(38px,4vw,58px)}.contact em{color:#53612d}.contact>div>p{margin-top:25px;max-width:320px;color:#53612d}.contact-note{display:block;margin-top:65px;font-size:11px;color:#53612d}form{display:grid;gap:17px}label{display:block;font-size:11px;font-weight:600}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #a8bd62;background:transparent;border-radius:0;padding:12px 0;font-size:13px;color:var(--ink)}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#6e7d44}form .button{width:100%;margin-top:5px}.form-note{font-size:10px;line-height:1.6;color:#53612d}.copy-button{padding:10px 15px;border:1px solid var(--ink);background:transparent;border-radius:3px;font-size:12px;margin-top:10px}#copy-status{font-size:11px;margin-left:10px}footer{padding:30px 5% 45px;display:flex;gap:30px;justify-content:space-between;align-items:center;font-size:10px;color:var(--muted)}footer .brand{color:var(--ink);font-size:19px}footer .brand img{width:36px;height:36px}footer .brand small{font-size:7px}dialog{width:min(580px,90vw);border:0;padding:45px;border-radius:13px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#17201cb3;backdrop-filter:blur(5px)}dialog h2{font-size:32px;margin-bottom:22px}dialog p,dialog li{font-size:14px;line-height:1.8}dialog h3{font-size:16px;margin-top:22px}dialog ul{padding-left:18px;margin-bottom:28px}.close{position:absolute;top:12px;right:16px;border:0;background:transparent;font-size:28px;color:var(--ink)}[hidden]{display:none!important}@media(min-width:1441px){.contact{margin-left:auto;margin-right:auto}}@media(max-width:1050px){.hero{gap:28px}.destination{width:200px;height:200px;left:20%;top:29%}.destination span{font-size:175px}.orbit{left:0}.orbit-two{left:-15%}.hero-art{min-height:510px}h1{letter-spacing:-2.5px}.actions{gap:15px;flex-wrap:wrap}.about{gap:40px}.contact{gap:40px}.hero-foot{flex-direction:column}nav{gap:18px}.brand{font-size:20px}}@media(max-width:740px){header{padding:19px 6%;position:relative}header>.button{margin-left:auto;margin-right:15px;padding:9px 12px;gap:15px}.menu{display:block;background:transparent;border:0;font-size:22px}nav{display:none;position:absolute;top:81px;left:0;right:0;background:var(--paper);padding:25px;z-index:10;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column}.brand{font-size:16px;gap:7px}.brand small{font-size:7px;letter-spacing:1.4px}.brand img{width:35px;height:35px}.hero{grid-template-columns:1fr;padding:42px 6%;gap:30px}h1{font-size:54px;letter-spacing:-3px}.hero-copy>p{font-size:14px}.hero-art{min-height:450px}.destination{left:28%;top:24%}.orbit{left:12%;top:5%}.orbit-two{left:3%;top:0}.hero-foot{flex-direction:row}.service-strip{overflow:hidden;justify-content:flex-start;white-space:nowrap;padding:19px 6%}.section{padding:60px 6%}.section-heading{display:block}.section-heading>p{margin-top:22px}.service-grid{grid-template-columns:1fr 1fr}.service-card{padding:20px;min-height:260px}.service-card h3{font-size:16px}.filters{gap:5px}.filters button{font-size:10px;padding:9px 12px}.about{grid-template-columns:1fr;gap:35px;padding-top:0}.about-art{min-height:350px}.big-arrow{font-size:300px;top:-40px;left:30%}.about-caption{font-size:25px}.about-copy h2{font-size:32px}.steps{grid-template-columns:1fr 1fr;gap:30px}.faq{grid-template-columns:1fr;gap:25px}.contact{grid-template-columns:1fr;margin:0 5% 35px;padding:40px 7%;gap:35px}.contact-note{margin-top:25px}.contact h2{font-size:44px}footer{flex-wrap:wrap;padding:20px 6% 35px;gap:25px}footer .brand{width:100%}dialog{padding:35px 25px}.art-bottom>span:first-child{font-size:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Refined controls and a complete company footer. */
.button{min-height:46px;padding:12px 20px;gap:24px;line-height:1.4;font-size:13px;border-radius:6px}
.button span{font-size:18px;line-height:1;display:inline-block}
.button.small{min-height:42px;padding:10px 16px;font-size:12px;gap:20px}
.text-link{min-height:44px;align-items:center;padding:10px 0;gap:13px}
.service-card button{min-height:44px;margin-top:10px;display:inline-flex;align-items:center}
.filters button{min-height:40px;padding:10px 17px}
.close{width:44px;height:44px;display:grid;place-items:center;line-height:1}
.copy-button{min-height:44px;padding:10px 16px}
.menu{min-width:44px;min-height:44px;padding:8px;line-height:1}
.site-footer{display:block;background:var(--ink);color:#c1cabb;padding:60px 5% 0;font-size:12px}
.footer-main{max-width:1296px;margin:auto;display:grid;grid-template-columns:1.3fr .8fr 1fr;gap:65px;padding-bottom:45px}
.site-footer .brand{color:var(--paper);font-size:23px;width:auto}
.site-footer .brand img{width:44px;height:44px}
.site-footer .brand small{font-size:8px}
.footer-intro>p{color:#b1bda7;margin-top:23px;font-size:15px;line-height:1.7}
.footer-domain{display:block;margin-top:20px;font-size:11px;color:#8c9b84}
.site-footer h3{font-family:'DM Sans',sans-serif;color:var(--paper);font-size:10px;text-transform:uppercase;letter-spacing:1.6px;font-weight:500;margin-bottom:16px}
.site-footer .footer-nav{display:flex;position:static;flex-direction:column;align-items:flex-start;gap:0;padding:0;border:0;background:transparent;font-size:12px}
.footer-nav a{display:inline-flex;align-items:center;min-height:36px;padding:6px 0;gap:10px;color:#c1cabb}
.footer-nav a:hover,.footer-bottom a:hover{color:var(--lime)}
.footer-company p{font-size:11px;color:#acb9a3;line-height:1.8}
.footer-company .legal-name{font-size:14px;color:#ecf1e5;margin-bottom:5px}
.footer-company strong{font-weight:500;color:#d0dac8}
.footer-company .office-label{margin:22px 0 10px}
.footer-company address{font-style:normal;font-size:12px;color:#acb9a3;line-height:1.8}
.footer-bottom{max-width:1296px;margin:auto;border-top:1px solid #3b4835;padding:22px 0;display:flex;justify-content:space-between;align-items:center;gap:25px}
.footer-bottom p{font-size:10px;color:#95a38d;line-height:1.8}
.footer-bottom a{display:flex;align-items:center;min-height:44px;font-size:11px;gap:17px;color:#c1cabb}
@media(max-width:740px){.button{min-height:44px;padding:11px 16px;gap:18px;font-size:12px}.button span{font-size:17px}header>.button.small{min-height:40px;padding:9px 12px;gap:12px;margin-right:4px;font-size:11px}.actions{gap:10px 20px;margin:25px 0 32px;align-items:center}.actions .button{flex:0 0 auto}.actions .text-link{font-size:11px;gap:10px}.filters button{min-height:40px;font-size:10px;padding:9px 12px}.contact form .button{min-height:46px;padding:12px 17px}.service-card button{font-size:11px;gap:0}.service-card button span{margin-left:10px}.site-footer{padding:42px 6% 0}.footer-main{grid-template-columns:1fr 1fr;gap:35px 20px;padding-bottom:28px}.footer-intro{grid-column:1/-1}.site-footer .brand{font-size:21px}.footer-intro>p{font-size:14px;margin-top:17px}.footer-domain{margin-top:14px}.site-footer .footer-nav{display:flex;gap:0}.footer-nav a{min-height:44px}.footer-company p{font-size:11px}.footer-company .legal-name{font-size:13px}.footer-company address{font-size:11px}.footer-bottom{align-items:flex-start;gap:15px;padding:17px 0}.footer-bottom p{max-width:235px}.footer-bottom p span{display:block}.footer-bottom a{white-space:nowrap;gap:8px;min-height:40px}}
@media(max-width:380px){header{padding-left:4%;padding-right:4%}.actions{gap:10px 15px}.actions .button{padding:11px 14px;gap:13px}.actions .text-link{font-size:10px}.footer-main{grid-template-columns:1fr}.footer-intro{grid-column:auto}}
input:focus,select:focus,textarea:focus{outline:none;border-bottom-color:var(--ink)}
.footer-main{grid-template-columns:1.5fr 1fr}
.site-footer>.footer-company{max-width:1296px;margin:0 auto;padding:28px 0;border-top:1px solid #3b4835;display:grid;grid-template-columns:1fr 1fr;column-gap:40px}
.site-footer>.footer-company>h3,.site-footer>.footer-company>.legal-name,.site-footer>.footer-company>p{grid-column:1}
.site-footer>.footer-company>.office-label{grid-column:2;grid-row:1;margin:0 0 16px}
.site-footer>.footer-company>address{grid-column:2;grid-row:2/4}
@media(max-width:740px){.footer-main{grid-template-columns:1fr 1fr}.footer-intro{grid-column:auto}.site-footer>.footer-company{column-gap:20px}.site-footer>.footer-company h3{font-size:9px;letter-spacing:1.2px}}
@media(max-width:380px){.footer-main{grid-template-columns:1fr}.site-footer>.footer-company{display:block}.site-footer>.footer-company>.office-label{margin-top:24px}}
/* Simple legal lines inspired by the reference footer. */
.footer-main{grid-template-columns:1.15fr .7fr 1.3fr;gap:55px}
.footer-legal p{font-size:11px;line-height:1.9;margin:0;color:#aebaa5}
.footer-legal strong{font-weight:500;color:#d0dac8}
.footer-legal address{font-style:normal;font-size:11px;line-height:1.9;color:#aebaa5}
.footer-bottom{align-items:flex-end;padding:25px 0 30px}
.footer-newsletter>p{font-size:12px;color:#acb9a3;line-height:1.7;max-width:290px;margin-bottom:20px}
.footer-newsletter>label{font-size:10px;font-weight:500;color:#c1cabb;margin-bottom:8px}
.newsletter-field{display:flex;align-items:stretch;border:1px solid #53614a;border-radius:6px;overflow:hidden}
.newsletter-field input{border:0;outline:none;color:var(--paper);font-size:12px;padding:13px 12px;min-width:0;flex:1;width:0}
.newsletter-field input::placeholder{color:#8d9d83}
.newsletter-field:focus-within{border-color:var(--lime)}
.newsletter-field button{background:var(--lime);color:var(--ink);font-size:10px;padding:12px;display:flex;align-items:center;gap:10px;border:0;white-space:nowrap;cursor:default;opacity:.75}
.footer-newsletter #newsletter-note{font-size:10px;color:#8d9d83;margin:9px 0 0}
@media(max-width:740px){.footer-main{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-newsletter{grid-column:1/-1}.footer-newsletter>p{max-width:none;margin-bottom:16px}.footer-bottom{align-items:flex-end;gap:12px}.footer-bottom .footer-legal p{max-width:none;font-size:10px}.footer-legal address{font-size:10px}.footer-legal{max-width:260px}.footer-bottom>a{min-height:44px;font-size:10px;flex-shrink:0}.newsletter-field input{padding:14px;font-size:13px}.newsletter-field button{font-size:11px;padding:12px 16px}}
@media(max-width:380px){.footer-main{grid-template-columns:1fr}.footer-newsletter{grid-column:auto}.footer-bottom{flex-direction:column;align-items:flex-start}.footer-legal{max-width:none}}
.footer-bottom .footer-legal{max-width:none;flex:1;min-width:0}
.footer-bottom .footer-legal p,.footer-bottom .footer-legal strong{display:inline;font-size:11px;font-weight:400;line-height:1.8;color:#aebaa5}
@media(max-width:740px){.footer-bottom{flex-wrap:wrap}.footer-bottom .footer-legal p,.footer-bottom .footer-legal strong{font-size:11px}}
.footer-bottom{justify-content:center;text-align:center}
.footer-bottom .footer-legal{width:100%;max-width:none;text-align:center}
.footer-bottom .footer-legal p,.footer-bottom .footer-legal strong{font-size:14px;line-height:1.9}
@media(max-width:740px){.footer-bottom{align-items:center}.footer-bottom .footer-legal p,.footer-bottom .footer-legal strong{font-size:13px}}
@media(max-width:740px){.footer-main{grid-template-columns:1fr}.footer-intro{grid-column:1;grid-row:1}.footer-newsletter{grid-column:1;grid-row:2}.site-footer .footer-nav{grid-column:1;grid-row:3}}
@media(max-width:740px){.site-footer .footer-nav{grid-row:2}.footer-newsletter{grid-row:3}}
