@font-face{font-family:Jost;src:url('assets/fonts/jost-light.ttf') format('truetype');font-style:normal;font-weight:300;font-display:swap}
@font-face{font-family:Jost;src:url('assets/fonts/jost-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Jost;src:url('assets/fonts/jost-medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
:root{color-scheme:light;--green:#063e38;--dark-green:#003b36;--gold:#c88f5c;--paper:#fcfaf6;--outer:#f3efe9;--ink:#263739}
*{box-sizing:border-box}
html{min-width:320px;scrollbar-color:var(--green) var(--outer);scrollbar-width:thin}
html::-webkit-scrollbar{width:12px;height:12px}
html::-webkit-scrollbar-track{background:var(--outer)}
html::-webkit-scrollbar-thumb{background:var(--green);border:2px solid var(--outer);border-radius:999px}
html::-webkit-scrollbar-thumb:hover{background:#126457}
body{margin:0;min-height:100svh;padding:0;background:var(--outer);color:var(--dark-green);font-family:Jost,'Century Gothic',Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:5px}
a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}
.site-card{position:relative;isolation:isolate;overflow:hidden;width:100%;min-height:100svh;margin:0 auto;background:var(--paper)}
.hero{position:relative;z-index:2;height:340px;text-align:center}
.hero:before{content:'';position:absolute;inset:0 0 95px;background:var(--paper);z-index:0}
.hero-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;padding:31px 24px 0}
.logo{display:block;width:min(420px,65%);height:auto}
h1{margin:52px 0 0;font-size:clamp(48px,5vw,68px);line-height:1;letter-spacing:-.045em;font-weight:500;white-space:nowrap}
.hero-subtitle{max-width:900px;margin:8px 0 0;color:#465052;font-size:22px;font-weight:300;line-height:1.35}
.hero-wave{position:absolute;z-index:1;bottom:0;left:0;width:100%;height:95px;fill:var(--paper)}
.portraits{position:relative;z-index:1;height:clamp(520px,46vw,890px);margin-top:-95px;overflow:hidden}
.portraits img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.cta-layer{position:relative;z-index:5;height:0}
.primary-cta{position:absolute;top:-52px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:25px;width:min(490px,calc(100% - 48px));height:88px;padding:0 32px 0 39px;border:2px solid var(--gold);border-radius:28px;background:linear-gradient(110deg,#003e36,#005447);box-shadow:0 12px 22px #463d2e38;color:#fff;text-decoration:none;white-space:nowrap;transition:background .18s,transform .18s}
.primary-cta:hover{background:linear-gradient(110deg,#005347,#006554);transform:translateX(-50%) translateY(-2px)}
.cta-whatsapp{width:43px;height:43px;flex:none;fill:currentColor;stroke:none}
.cta-divider{height:38px;border-left:1px solid #ffffffa6}
.cta-text{flex:1;font-size:23px;font-weight:700}
.cta-arrow{display:grid;place-items:center;width:43px;height:43px;flex:none;border:1.5px solid var(--gold);border-radius:50%;color:var(--gold)}
.cta-arrow svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.contacts{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:184px;padding:66px 44px 22px;background:var(--paper)}
.footer-wave{position:absolute;left:0;top:-29px;width:100%;height:30px;fill:var(--paper)}
.contact-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.15fr) minmax(0,1.45fr);column-gap:20px;width:100%;padding:0 42px;align-items:center}
.contact-item{display:flex;align-items:center;justify-content:center;gap:17px;min-width:0;min-height:42px;padding:0 24px;color:var(--dark-green);font-size:18px;line-height:1.3;font-weight:400;text-decoration:none}
.contact-item[href]:hover span{text-decoration:underline}
.contact-item svg{width:31px;height:31px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.contact-row .contact-item:not(:last-child){border-right:1px solid #dcc7b3}
.contact-item span{overflow-wrap:anywhere}
.phone-numbers{display:flex;flex-direction:column;gap:2px;white-space:nowrap}
.phone-numbers a{color:inherit;text-decoration:none}
.phone-numbers a:hover{text-decoration:underline}
.contact-address{text-align:left}
.contact-address svg{width:34px;height:34px}
.corner-art{position:absolute;inset:0;z-index:4;width:100%;height:100%;pointer-events:none}
.corner-fill{fill:#ead9c3;opacity:.34}
.corner-stroke{fill:none;stroke:#c8874e;stroke-width:1.2;vector-effect:non-scaling-stroke}

@media(max-width:950px){
 body{padding:32px}
 .site-card{min-height:calc(100svh - 64px);border:1px solid #fff;border-radius:8px;box-shadow:0 12px 36px #4237281f}
 .hero{height:340px}
 .hero:before{bottom:85px}
 .hero-wave{height:85px}
 .hero-content{padding-top:34px}
 .logo{width:min(365px,68%)}
 h1{font-size:clamp(42px,5.8vw,54px);margin-top:48px}
 .hero-subtitle{max-width:600px;font-size:18px}
 .portraits{height:440px;margin-top:-85px}
 .contacts{padding-top:68px}
 .contact-row{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:10px}
 .contact-row .contact-item:nth-child(2){border-right:0}
}

@media(max-width:700px){
 body{padding:0}
 .site-card{min-height:100svh;border:0;border-radius:0;box-shadow:none}
 .site-card:before,.site-card:after{content:'';position:absolute;z-index:4;top:150px;width:180px;height:350px;border:1px solid var(--gold);border-radius:50%;opacity:.75;pointer-events:none}
 .site-card:before{left:-130px;transform:rotate(-10deg)}
 .site-card:after{right:-130px;transform:rotate(10deg)}
 .hero{height:clamp(285px,45vw,320px)}
 .hero:before{bottom:10px}
 .hero:after{content:'';position:absolute;z-index:1;top:-65px;right:-55px;width:145px;height:165px;border-radius:50%;background:#ead9c3;opacity:.35;pointer-events:none}
 .hero-wave{height:10px}
 .hero-content{padding:31px 18px 0}
 .logo{width:clamp(220px,55vw,320px);max-width:100%}
 h1{margin-top:25px;font-size:clamp(33px,9.2vw,40px);line-height:1.02;letter-spacing:-.045em;white-space:normal}
 .hero-subtitle{max-width:min(85vw,520px);margin-top:12px;font-size:17px;line-height:1.4}
 .portraits{height:clamp(270px,52vw,365px);margin-top:-10px}
 .portraits img{object-position:center top}
 .primary-cta{top:-31px;gap:12px;width:calc(100% - 28px);height:64px;padding:0 18px;border-radius:21px}
 .cta-whatsapp{width:28px;height:28px}
 .cta-divider{height:29px}
 .cta-text{font-size:clamp(15px,3.8vw,18px);white-space:nowrap}
 .cta-arrow{width:30px;height:30px}
 .cta-arrow svg{width:18px;height:18px}
 .contacts{display:block;min-height:0;padding:64px 29px 28px}
 .contacts:after{content:'';position:absolute;z-index:0;left:-65px;bottom:-75px;width:145px;height:145px;border-radius:50%;background:#ead9c3;opacity:.3;pointer-events:none}
 .footer-wave{top:-17px;height:18px}
 .contact-row{position:relative;z-index:1;display:block;padding:0}
 .contact-item{justify-content:center;gap:18px;min-height:63px;padding:8px 2px;font-size:16px;line-height:1.35;text-align:center}
 .contact-row .contact-item:not(:last-child){border-right:0;border-bottom:1px solid #e1d2c4}
 .contact-row .contact-item:last-child{border-bottom:0}
 .contact-item svg{width:25px;height:25px}
 .contact-phones{gap:10px}
 .phone-numbers{flex-direction:row;align-items:center;justify-content:center;gap:4px;font-size:15px;white-space:normal}
 .phone-numbers a{display:flex;align-items:center;min-height:44px;white-space:nowrap}
 .phone-numbers a+a:before{content:'|';margin-right:4px;color:var(--gold);text-decoration:none}
 .contact-address{font-size:14px;min-height:63px;text-align:center}
 .contact-address svg{width:27px;height:27px}
 .corner-art{display:none}
}
@media(max-width:380px){
 .hero{height:280px}
 .hero-content{padding-top:27px}
 .logo{width:220px}
 h1{margin-top:24px;font-size:33px}
 .portraits{height:267px}
 .primary-cta{gap:9px;padding:0 13px}
 .cta-text{font-size:15px}
 .contacts{padding-left:23px;padding-right:23px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
