:root{interpolate-size:allow-keywords;--olive-50:#f7f8f1;--olive-100:#ecefdf;--olive-200:#d8dfbe;--olive-300:#bcc894;--olive-400:#9dae6f;--olive-500:#7f9251;--olive-600:#63753c;--olive-700:#4c5b30;--olive-800:#3d4a2a;--olive-900:#2b331d;--olive-950:#171c0e;--gold-400:#d9b96a;--gold-500:#c9a24b;--sand-50:#fdfcf8}html,body{overflow-x:hidden;max-width:100%}section[id]{scroll-margin-top:7.5rem}@media(min-width:1024px){section[id]{scroll-margin-top:6rem}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--olive-50)}::-webkit-scrollbar-thumb{background:var(--olive-300);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--olive-500)}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--olive-600)}.section-title{font-family:Fraunces,Georgia,serif;font-size:clamp(2rem,4vw,3.25rem);font-weight:600;line-height:1.08;letter-spacing:-.02em;color:var(--olive-950);margin-top:.75rem}.nav-link{position:relative;padding:.55rem .95rem;font-size:.9rem;font-weight:500;color:var(--olive-800);border-radius:99px;transition:color .25s ease,background-color .25s ease}.nav-link:hover{color:var(--olive-950);background:var(--olive-100)}.nav-link.active{color:#fff;background:var(--olive-800)}.mobile-link{padding:.95rem .25rem;font-size:1rem;font-weight:500;color:var(--olive-800);border-bottom:1px solid var(--olive-100);transition:color .2s ease,padding-left .2s ease}.mobile-link:last-child{border-bottom:0}.mobile-link:hover{color:var(--olive-600);padding-left:.75rem}#navbar{background:0 0}#navbar.scrolled{background:rgba(253,252,248,.82);backdrop-filter:blur(16px)saturate(160%);-webkit-backdrop-filter:blur(16px)saturate(160%);border-bottom-color:var(--olive-100);box-shadow:0 4px 30px -12px rgba(43,51,29,.18)}.ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;padding:1.25rem;text-align:center;color:var(--olive-600);background:repeating-linear-gradient(45deg,rgba(157,174,111,.1) 0 12px,rgba(157,174,111,2%) 12px 24px),linear-gradient(140deg,var(--olive-100),var(--olive-50));border:2px dashed var(--olive-300);overflow:hidden}.ph span{font-size:.8rem;font-weight:600;letter-spacing:.02em;opacity:.85}.draw-path{stroke-dasharray:320;stroke-dashoffset:320;animation:draw 1.4s .4s ease-out forwards}@keyframes draw{to{stroke-dashoffset:0}}.noise{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.float-slow{animation:float 6s ease-in-out infinite}.float-slower{animation:float 8s ease-in-out infinite reverse}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}.marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.marquee-track{display:flex;align-items:center;gap:2rem;width:max-content;animation:scroll-x 38s linear infinite}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-track span{font-family:Fraunces,Georgia,serif;font-size:1.05rem;font-weight:500;white-space:nowrap;color:var(--olive-700)}.marquee-track .dot{color:var(--gold-500)}@keyframes scroll-x{to{transform:translateX(-50%)}}.svc{position:relative;padding:2rem 1.75rem;border-radius:1.5rem;border:1px solid rgba(255,255,255,8%);background:rgba(255,255,255,4%);backdrop-filter:blur(8px);overflow:hidden;transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .35s ease,background-color .35s ease}.svc::before{content:"";position:absolute;inset:0;background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(201,162,75,.16),transparent 65%);opacity:0;transition:opacity .35s ease;pointer-events:none}.svc:hover{transform:translateY(-6px);border-color:rgba(217,185,106,.4);background:rgba(255,255,255,7%)}.svc:hover::before{opacity:1}.svc-icon{display:grid;place-items:center;width:3.25rem;height:3.25rem;border-radius:1rem;margin-bottom:1.25rem;font-size:1.15rem;color:var(--gold-400);background:linear-gradient(140deg,rgba(217,185,106,.18),rgba(255,255,255,4%));border:1px solid rgba(217,185,106,.22);transition:transform .35s cubic-bezier(.22,1,.36,1)}.svc:hover .svc-icon{transform:scale(1.08)rotate(-6deg)}.svc h3{font-family:Fraunces,Georgia,serif;font-size:1.2rem;font-weight:600;color:#fff;margin-bottom:.55rem}.svc p{font-size:.9rem;line-height:1.65;color:var(--olive-300)}.svc>summary{list-style:none}.svc>summary::-webkit-details-marker{display:none}@media(min-width:1024px){.svc>summary{display:block;cursor:default}.svc-chevron{display:none}}@media(max-width:1023px){.svc{padding:0;border-radius:1rem}.svc[open]{background:rgba(255,255,255,7%);border-color:rgba(217,185,106,.3)}.svc>summary{display:flex;align-items:center;gap:.9rem;padding:.8rem 1rem;min-height:56px;cursor:pointer}.svc>summary:focus-visible{outline:2px solid var(--gold-400);outline-offset:-2px;border-radius:1rem}.svc .svc-icon{width:2.5rem;height:2.5rem;margin-bottom:0;border-radius:.8rem;font-size:1rem;flex-shrink:0}.svc h3{flex:1;margin-bottom:0;font-size:1rem;line-height:1.35}.svc-chevron{flex-shrink:0;font-size:.75rem;color:var(--olive-400);transition:transform .3s ease}.svc[open] .svc-chevron{transform:rotate(180deg);color:var(--gold-400)}.svc>p{padding:0 1rem 1.1rem 3.4rem}.svc::details-content{block-size:0;overflow:hidden;transition:block-size .3s cubic-bezier(.22,1,.36,1),content-visibility .3s allow-discrete}.svc[open]::details-content{block-size:auto}}.proc{display:flex;gap:.85rem;padding:1rem 1.1rem;border-radius:1rem;background:rgba(255,255,255,4%);border:1px solid rgba(255,255,255,7%);transition:background-color .25s ease}.proc:hover{background:rgba(255,255,255,8%)}.proc i{flex-shrink:0;margin-top:.3rem;font-size:.7rem;color:var(--olive-950);background:var(--gold-400);width:1.15rem;height:1.15rem;display:grid;place-items:center;border-radius:99px}.proc strong{display:block;font-size:.9rem;font-weight:600;color:#fff}.proc span{display:block;font-size:.8rem;line-height:1.5;color:var(--olive-400);margin-top:.15rem}.gallery-swiper{padding-bottom:.5rem}.gallery-swiper .swiper-slide{height:auto}.gallery-swiper .swiper-pagination-bullet{width:26px;height:4px;border-radius:99px;background:var(--olive-300);opacity:1;transition:background-color .3s ease,width .3s ease}.gallery-swiper .swiper-pagination-bullet-active{background:var(--olive-800);width:44px}.team-swiper{padding-bottom:.5rem}.team-swiper .swiper-slide{height:auto}.team-swiper .swiper-pagination-bullet{width:26px;height:4px;border-radius:99px;background:var(--olive-300);opacity:1;transition:background-color .3s ease,width .3s ease}.team-swiper .swiper-pagination-bullet-active{background:var(--olive-800);width:44px}.doc{height:100%;background:#fff;border:1px solid var(--olive-100);border-radius:1.5rem;padding:.75rem .75rem 1.5rem;transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease}.doc:hover{transform:translateY(-8px);box-shadow:0 8px 20px -6px rgba(43,51,29,.12),0 28px 60px -20px rgba(43,51,29,.28)}.doc .ph{transition:filter .35s ease}.doc:hover .ph{filter:saturate(1.15)brightness(1.02)}.doc-body{padding:1.35rem .85rem 0}.doc-tag{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--olive-700);background:var(--olive-100);padding:.25rem .6rem;border-radius:99px;margin-bottom:.6rem}.doc-body h3{font-family:Fraunces,Georgia,serif;font-size:1.2rem;font-weight:600;color:var(--olive-950)}.doc-body p{margin-top:.25rem;font-size:.875rem;color:var(--olive-600)}.contact-row{display:flex;align-items:center;gap:1.1rem;padding:1.25rem 1.5rem;background:#fff;border:1px solid var(--olive-100);border-radius:1.25rem;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}a.contact-row:hover{transform:translateX(6px);border-color:var(--olive-300);box-shadow:0 12px 30px -14px rgba(43,51,29,.3)}.contact-icon{display:grid;place-items:center;flex-shrink:0;width:3rem;height:3rem;border-radius:1rem;color:#fff;background:linear-gradient(140deg,var(--olive-600),var(--olive-800))}.contact-label{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--olive-500)}.contact-value{font-weight:600;color:var(--olive-950)}[data-lang-switch]{display:inline-flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:.1rem}.lang-switch-desktop{display:none}@media(min-width:1024px){.lang-switch-desktop{display:inline-flex}}.lang-globe{display:inline-grid;place-items:center;padding-right:.3rem;font-size:.7rem;color:var(--olive-400)}.lang-opt{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:.2rem .6rem;font-size:.8rem;font-weight:600;line-height:1.25;color:var(--olive-600);background:0 0;border:0;border-radius:99px;white-space:nowrap;cursor:pointer;transition:color .2s ease,background-color .2s ease}.lang-opt:hover{background:rgba(127,146,81,.13);color:var(--olive-900)}.lang-opt:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(217,185,106,.7)}.lang-opt-active{color:#fff;cursor:default;background:var(--olive-700)}.lang-opt-active:hover{color:#fff;background:var(--olive-700)}@media(max-width:1023px){.lang-opt{min-height:36px;padding:.3rem .8rem;font-size:.875rem}.lang-globe{font-size:.75rem}}@media(max-width:400px){.lang-opt{padding:.3rem .65rem}}.field{display:block}.field>span{display:block;margin-bottom:.45rem;font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--olive-600)}.field input,.field select,.field textarea{width:100%;padding:.85rem 1.1rem;font:inherit;font-size:.92rem;color:var(--olive-950);background:var(--olive-50);border:1px solid var(--olive-200);border-radius:.9rem;outline:none;transition:border-color .25s ease,box-shadow .25s ease,background-color .25s ease}.field textarea{resize:vertical}.field input::placeholder,.field textarea::placeholder{color:var(--olive-400)}.field input:focus,.field select:focus,.field textarea:focus{background:#fff;border-color:var(--olive-500);box-shadow:0 0 0 4px rgba(127,146,81,.15)}@media(max-width:480px){.contact-row{padding:1rem 1.1rem;gap:.85rem}.contact-icon{width:2.75rem;height:2.75rem}.contact-value{font-size:.9rem}.doc-body{padding:1.1rem .6rem 0}.marquee-track{gap:1.35rem}.marquee-track span{font-size:.95rem}}@media(hover:none){.nav-link,.mobile-link{min-height:44px;display:flex;align-items:center}.doc:hover,.svc:hover,a.contact-row:hover{transform:none}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}