﻿:root{--ivory:#fffaf1;--warm-white:#fffdf7;--champagne:#f8edcf;--antique-gold:#e4c273;--gold:#d4a64b;--gold-deep:#a97023;--brown:#4a3218;--ink:#2f271d;--text:#635645;--line:rgba(169,112,35,.34);--shadow:0 22px 60px rgba(89,61,20,.14);--serif:"Cormorant Garamond",Georgia,serif;--sans:"Inter",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{margin:0;background:radial-gradient(circle at top right,rgba(232,199,116,.36),transparent 34rem),var(--ivory);color:var(--text);font-family:var(--sans);font-size:17px;line-height:1.65;overflow-x:clip}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}.svg-sprite{display:none}.skip-link{position:absolute;left:1rem;top:-4rem;z-index:100;background:var(--brown);color:white;padding:.75rem 1rem}.skip-link:focus{top:1rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.site-header{position:sticky;top:0;z-index:40;background:rgba(255,253,249,.92);border-top:3px solid var(--gold);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.nav{width:min(1230px,calc(100% - 42px));min-height:96px;margin:0 auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;gap:13px;color:var(--brown);text-decoration:none;min-width:315px}.brand-logo{width:64px;height:64px;flex:0 0 auto;border-radius:50%;object-fit:cover;box-shadow:0 8px 18px rgba(89,61,20,.12)}.brand-text{font-family:var(--serif);font-size:1.08rem;letter-spacing:.05em;text-transform:uppercase;line-height:1}.mobile-menu-logo{display:none}.brand-text strong{display:block;margin-top:4px;color:var(--gold-deep);font:700 .68rem/1 var(--sans);letter-spacing:.18em}.nav-links{justify-self:center;display:flex;gap:28px;align-items:center}.nav-links a,.footer nav a{color:var(--brown);text-decoration:none;font-size:.88rem;font-weight:700}.nav-links a:hover,.footer nav a:hover{color:var(--gold-deep)}.menu-toggle{display:none;width:50px;height:50px;border:1px solid var(--line);border-radius:6px;background:white}.menu-toggle span:not(.sr-only){display:block;width:24px;height:2px;margin:6px auto;background:var(--brown)}
.gold-btn,.outline-btn{position:relative;overflow:hidden;min-height:50px;display:inline-flex;align-items:center;justify-content:center;border-radius:0;padding:14px 30px;text-transform:uppercase;letter-spacing:.04em;font-size:.83rem;font-weight:800;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.gold-btn::after{content:"";position:absolute;inset:0 auto 0 -70%;width:50%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);transform:skewX(-18deg);transition:left .55s ease}.gold-btn:hover::after,.gold-btn:focus-visible::after{left:125%}.gold-btn{border:1px solid var(--gold);color:#2b1d18;background:linear-gradient(115deg,#f0cf7a,var(--gold),#a86d1c);box-shadow:0 13px 28px rgba(169,112,35,.22)}.gold-btn:hover,.gold-btn:focus-visible{transform:translateY(-2px);box-shadow:0 18px 36px rgba(169,112,35,.28)}.outline-btn{border:1px solid var(--line);background:rgba(255,255,255,.66);color:var(--brown)}.outline-btn:hover,.outline-btn:focus-visible{border-color:var(--gold-deep);transform:translateY(-1px)}:focus-visible{outline:3px solid rgba(212,166,75,.45);outline-offset:3px}
.section-shell{width:min(1230px,calc(100% - 42px));margin:0 auto;padding:72px 0}.eyebrow{margin:0 0 12px;color:var(--gold-deep);text-transform:uppercase;letter-spacing:.22em;font-size:.78rem;font-weight:800}h1,h2,h3{margin:0;color:var(--brown);line-height:1.02}h1,h2{font-family:var(--serif);font-weight:700}h1{max-width:650px;font-size:clamp(3.7rem,6.1vw,5.75rem)}h2{font-size:clamp(2.25rem,4.4vw,4rem)}h3{font-size:1.04rem}p{margin:0}
.hero{min-height:calc(100vh - 99px);display:grid;grid-template-columns:minmax(0,.82fr) minmax(420px,1fr);align-items:center;gap:58px;padding-top:54px}.hero-copy p:not(.eyebrow){max-width:520px;margin-top:24px;color:var(--ink);font-size:1.08rem}.ornament{display:block;width:92px;height:1px;margin:28px 0 0;background:var(--gold);position:relative}.ornament::after{content:"";position:absolute;left:42px;top:-4px;width:8px;height:8px;border:1px solid var(--gold);background:var(--ivory);transform:rotate(45deg)}.ornament.light{background:rgba(255,255,255,.7)}.ornament.light::after{background:transparent;border-color:#f4d488}.actions{display:flex;gap:24px;flex-wrap:wrap;margin-top:30px}
.arch-photo{position:relative;margin:0;padding:12px;border:2px solid var(--gold);background:linear-gradient(160deg,rgba(248,237,207,.95),rgba(255,250,241,.72));box-shadow:var(--shadow)}.arch-photo::before,.arch-photo::after{content:"";position:absolute;border:1px solid rgba(212,166,75,.6);pointer-events:none}.hero-arch{border-radius:48% 48% 0 0/24% 24% 0 0}.hero-arch::before{inset:-18px 22px 12px -22px;border-radius:48% 48% 0 0/24% 24% 0 0}.hero-arch::after{inset:64px -26px -20px 38px}.arch-photo img{width:100%;height:min(68vh,690px);object-fit:contain;object-position:center bottom;background:rgba(232,199,116,.24);border-radius:45% 45% 0 0/23% 23% 0 0;transition:transform .7s ease,filter .7s ease}.arch-photo:hover img,.framed-photo:hover img,.zoom-photo:hover img{transform:scale(1.025);filter:saturate(1.04)}
.ribbon{width:min(1270px,calc(100% - 42px));margin:0 auto 18px;padding:42px 68px;display:grid;grid-template-columns:160px 1fr 160px;align-items:center;gap:34px;background:linear-gradient(90deg,rgba(248,237,207,.76),rgba(255,253,247,.9),rgba(232,199,116,.34))}.ribbon h2{font-size:clamp(2rem,3.6vw,3rem)}.ribbon p:not(.eyebrow){max-width:780px;margin-top:12px}.botanical{height:100px;border-left:2px solid var(--gold);border-radius:50%;opacity:.65}.heart-line{color:var(--gold-deep);font-family:var(--serif);font-size:4rem;text-align:center}
.services-panel{width:min(1270px,calc(100% - 42px));display:grid;grid-template-columns:minmax(300px,.56fr) minmax(0,1fr);gap:72px;align-items:center;background:linear-gradient(90deg,rgba(248,237,207,.78),rgba(255,250,241,.96));padding:48px 84px}.framed-photo{margin:0;padding:10px;border:2px solid var(--gold);background:var(--antique-gold);box-shadow:var(--shadow)}.framed-photo img{width:100%;aspect-ratio:4/5;object-fit:contain;object-position:center top;background:rgba(255,255,255,.38)}.framed-photo img,.zoom-photo img{transition:transform .55s ease,filter .55s ease}.accordion-column h2{margin-bottom:18px;font-size:clamp(2.2rem,4vw,3.6rem)}.service-accordion{border-top:1px solid var(--line)}.accordion-item{border-bottom:1px solid var(--line)}.accordion-trigger{width:100%;min-height:62px;padding:12px 0;display:grid;grid-template-columns:40px 1fr 36px;align-items:center;gap:14px;border:0;background:transparent;color:var(--brown);text-align:left;font-weight:800}.accordion-trigger svg,.why-grid svg{width:32px;height:32px;fill:none;stroke:var(--gold-deep);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.accordion-trigger b{position:relative;width:26px;height:26px}.accordion-trigger b::before,.accordion-trigger b::after{content:"";position:absolute;background:var(--gold-deep);inset:12px 4px auto;height:1.5px}.accordion-trigger b::after{transform:rotate(90deg);transition:transform .2s ease}.accordion-trigger[aria-expanded=true] b::after{transform:rotate(0deg)}.accordion-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}.accordion-panel p{overflow:hidden;padding:0 50px 0 54px}.accordion-item.is-open .accordion-panel{grid-template-rows:1fr}.accordion-item.is-open .accordion-panel p{padding-bottom:18px}
.why{text-align:center}.why h2{margin-bottom:42px}.why-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}.why-grid article{min-height:160px;padding:8px 22px;border-right:1px solid var(--line)}.why-grid article:last-child{border-right:0}.why-grid svg{margin:0 auto 16px;width:46px;height:46px}.why-grid p{margin-top:8px;font-size:.93rem}.process{text-align:center;background:linear-gradient(90deg,rgba(248,237,207,.52),rgba(255,253,247,.76),rgba(232,199,116,.28))}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;margin-top:42px}.steps article{position:relative}.steps article:not(:last-child)::after{content:"";position:absolute;top:37px;left:calc(50% + 38px);width:calc(100% - 52px);border-top:1px dashed var(--gold)}.steps span{display:inline-flex;align-items:center;justify-content:center;width:74px;height:74px;border-radius:50%;color:white;background:radial-gradient(circle at 30% 25%,#f4d98d,var(--gold-deep));font:700 2rem/1 var(--serif);box-shadow:0 12px 24px rgba(169,112,35,.25)}.steps h3{margin-top:22px}.steps p{margin-top:10px;font-size:.9rem}
.gallery{overflow:hidden;text-align:center}.carousel{position:relative;margin-top:30px;overflow:hidden}.carousel-viewport{overflow:hidden;outline:none;max-width:100%;contain:paint;touch-action:pan-y}.carousel-track{display:flex;gap:18px;transition:transform .46s ease}.carousel-slide{flex:0 0 70%;margin:0;padding:10px;border:2px solid var(--gold);background:rgba(255,255,255,.72)}.zoom-photo{width:100%;border:0;padding:0;background:var(--champagne)}.zoom-photo img{width:100%;height:min(58vh,520px);object-fit:contain;background:var(--champagne)}.carousel-slide figcaption{margin-top:10px;color:var(--brown);font-family:var(--serif);font-size:1.8rem}.carousel-btn{position:absolute;top:48%;z-index:2;width:54px;height:54px;border:0;border-radius:50%;color:white;background:radial-gradient(circle at 30% 25%,#f5d989,var(--gold-deep));box-shadow:0 10px 24px rgba(169,112,35,.25);font-size:2.2rem}.carousel-btn.prev{left:-12px}.carousel-btn.next{right:-12px}.carousel-dots{display:flex;justify-content:center;gap:9px;margin-top:18px}.carousel-dots button{width:12px;height:12px;padding:0;border:1px solid var(--gold-deep);border-radius:50%;background:transparent}.carousel-dots button[aria-current=true]{background:var(--gold-deep)}
.consult-card{width:min(1270px,calc(100% - 42px));margin:0 auto;padding:30px 70px;display:grid;grid-template-columns:92px 1fr auto;gap:30px;align-items:center;border:1px solid var(--line);background:rgba(255,253,249,.9)}.consult-icon{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;background:var(--antique-gold)}.consult-icon svg{width:38px;height:38px;fill:none;stroke:white;stroke-width:1.4}.consult-card h2{font-size:clamp(2rem,3.6vw,3rem)}.consult-actions{text-align:center}.consult-actions p,.fine-print{margin-top:10px;font-size:.9rem}.consult-form{grid-column:1/-1;margin-top:10px;padding:28px;border-top:1px solid var(--line)}.form-head,.form-nav{display:flex;align-items:center;justify-content:space-between;gap:14px}.step-label{color:var(--gold-deep);font-weight:800;letter-spacing:.1em;text-transform:uppercase}.close-panel{border:0;background:transparent;color:var(--brown);font-size:2rem}.progress{height:6px;margin:14px 0 22px;background:rgba(212,166,75,.2)}.progress span{display:block;height:100%;width:33.33%;background:var(--gold);transition:width .25s ease}.form-step{display:none;padding:0;margin:0;border:0}.form-step.is-active{display:block;animation:softIn .25s ease}legend{margin-bottom:18px;color:var(--brown);font-family:var(--serif);font-size:2rem;font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}label{display:grid;gap:8px;color:var(--brown);font-weight:800;font-size:.93rem}input,select,textarea{width:100%;min-height:50px;padding:12px 14px;border:1px solid var(--line);background:rgba(255,250,241,.84);color:var(--ink)}textarea{resize:vertical}.form-step>label{margin-bottom:18px}.form-error{min-height:24px;color:#8a5312;font-weight:700}.form-nav{justify-content:flex-end;margin-top:18px}[data-prev],[data-submit]{display:none}.summary{margin-top:18px;padding:18px;background:rgba(248,237,207,.72);border:1px solid var(--line)}.summary dl{display:grid;grid-template-columns:180px 1fr;gap:8px 16px;margin:0}.summary dt{color:var(--brown);font-weight:800}.hidden-field{display:none}
.faq{display:grid;grid-template-columns:.34fr 1fr;gap:34px;background:linear-gradient(90deg,rgba(255,253,247,.76),rgba(248,237,207,.58))}.faq>div:first-child{justify-self:end;width:min(100%,330px);padding-top:18px}.faq-list details{border:1px solid var(--line);background:rgba(255,255,255,.65)}.faq-list summary{list-style:none;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:14px;padding:18px 22px;color:var(--brown);font-weight:800;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::before{content:"?";width:26px;height:26px;display:grid;place-items:center;border:1px solid var(--gold-deep);border-radius:50%;color:var(--gold-deep);font-family:var(--serif);font-size:1.05rem;line-height:1}.faq-list summary::after{content:"+";color:var(--gold-deep);font-size:1.6rem;line-height:1}.faq-list details[open] summary::after{content:"-"}.faq-list p{padding:0 22px 18px}
.final-cta{min-height:330px;padding:58px max(42px,calc((100vw - 1130px)/2));display:grid;grid-template-columns:minmax(0,560px) minmax(250px,330px);justify-content:center;gap:50px;align-items:center;background:radial-gradient(circle at 78% 20%,rgba(255,236,177,.26),transparent 20rem),linear-gradient(105deg,#6f4a13,#b78327 58%,#d7ad55);color:white}.final-cta>div{justify-self:center;width:100%}.final-cta h2,.final-cta p{color:white}.final-cta h2{max-width:490px}.final-cta p{margin:18px 0 26px}.mini-arch{max-width:330px;justify-self:center;background:rgba(255,255,255,.16);border-radius:0}.mini-arch::before,.mini-arch::after{display:none}.mini-arch img{height:270px;border-radius:0;object-fit:contain;object-position:center}
.footer{padding:52px max(22px,calc((100vw - 1230px)/2)) 0;background:linear-gradient(180deg,#f8edcf,#ead29b);border-top:1px solid var(--line);color:var(--brown)}.footer-main{display:grid;grid-template-columns:1.35fr 1fr .86fr .72fr;gap:48px;padding-bottom:42px}.footer-brand{display:flex;align-items:center;gap:16px;color:var(--brown);text-decoration:none}.footer-brand img{width:62px;height:62px;border-radius:50%;box-shadow:0 10px 24px rgba(89,61,20,.16)}.footer-brand span{font-family:var(--serif);font-size:1.35rem;font-weight:700;line-height:1.1}.footer-brand strong{display:block;margin-top:7px;color:var(--gold-deep);font:800 .82rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase}.footer-block h2{margin:0 0 14px;color:var(--gold-deep);font:800 .86rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase}.footer-block a,.footer-block p{display:table;margin:8px 0 0;color:var(--brown);text-decoration:none;font-weight:700}.footer-block p{max-width:260px;font-weight:500}.footer-socials{display:flex;gap:12px}.footer-socials a{width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(181,127,46,.72);border-radius:50%;background:rgba(255,250,241,.66);box-shadow:0 10px 22px rgba(89,61,20,.09);text-decoration:none;transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease,background .24s ease}.footer-socials a:hover{transform:translateY(-2px);border-color:var(--gold-deep);background:#fffaf5;box-shadow:0 16px 30px rgba(89,61,20,.14)}.footer-socials img{width:24px;height:24px;display:block;border-radius:7px;object-fit:contain}.footer-socials a:first-child img{border-radius:50%}.footer-copy{margin:0;padding:22px;border-top:1px solid rgba(169,112,35,.24);color:rgba(74,50,24,.78);text-align:center;font-size:.9rem}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:38;width:58px;height:58px;display:grid;place-items:center;border-radius:50%;color:white;background:#25d366;box-shadow:0 16px 34px rgba(37,211,102,.34)}.whatsapp-float svg{width:34px;height:34px;fill:currentColor}
.lightbox{width:min(960px,calc(100% - 28px));border:0;padding:22px;background:var(--ivory);box-shadow:var(--shadow)}.lightbox::backdrop{background:rgba(47,37,36,.72)}.lightbox img{max-height:78vh;margin:0 auto;object-fit:contain}.lightbox p{margin-top:10px;color:var(--brown);font-weight:800;text-align:center}.close-lightbox{position:absolute;top:8px;right:12px;border:0;background:transparent;color:var(--brown);font-size:2rem}.thanks-page{min-height:100vh;display:grid;place-items:center;padding:24px}.thanks-card{width:min(760px,100%);padding:54px;border:1px solid var(--line);background:rgba(255,253,249,.92);box-shadow:var(--shadow);text-align:center}.thanks-card h1{max-width:none;font-size:clamp(3rem,7vw,5rem)}.thanks-card p:not(.eyebrow){margin:18px auto 28px;max-width:580px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.hero.is-visible .hero-copy{animation:editorialSlide .85s ease both}.hero.is-visible .hero-arch{animation:editorialPhoto .95s ease both}@keyframes softIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes editorialSlide{from{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:translateX(0)}}@keyframes editorialPhoto{from{opacity:0;transform:translateX(18px) scale(.985)}to{opacity:1;transform:translateX(0) scale(1)}}
@media(max-width:1080px){.nav{grid-template-columns:auto auto}.nav-consult{display:none}.menu-toggle{display:block;justify-self:end}.nav-links{position:fixed;inset:99px 20px auto;display:none;flex-direction:column;align-items:stretch;padding:18px;border:1px solid var(--line);background:var(--warm-white);box-shadow:var(--shadow)}.mobile-menu-logo{display:grid;place-items:center;padding:10px 0 14px;border-bottom:1px solid var(--line);margin-bottom:8px}.mobile-menu-logo img{width:82px;height:82px;border-radius:50%;box-shadow:0 10px 24px rgba(89,61,20,.14)}.nav-links.is-open{display:flex}.nav-links a{padding:12px}.hero,.services-panel,.faq,.final-cta{grid-template-columns:1fr}.hero-copy{text-align:center}.hero-copy p:not(.eyebrow),.ornament{margin-left:auto;margin-right:auto}.actions{justify-content:center}.hero-arch{max-width:620px;justify-self:center}.hero-arch::after{display:none}.ribbon{grid-template-columns:1fr;padding:36px;text-align:center}.botanical,.heart-line{display:none}.services-panel{padding:42px}.why-grid{grid-template-columns:repeat(2,1fr)}.why-grid article{border-right:0;border-bottom:1px solid var(--line)}.steps{grid-template-columns:1fr}.steps article:not(:last-child)::after{display:none}.consult-card{grid-template-columns:1fr;padding:32px;text-align:center}.consult-icon{margin:0 auto}.footer-main{grid-template-columns:repeat(2,1fr)}.footer-socials{justify-content:flex-start}}
@media(max-width:640px){body{font-size:16px}.section-shell{width:min(100% - 28px,480px);padding:58px 0}.nav{width:min(100% - 28px,480px);min-height:86px}.brand{min-width:0;gap:9px}.brand-logo{width:52px;height:52px}.brand-text{font-size:.88rem}.brand-text strong{font-size:.54rem}h1{font-size:clamp(3rem,14vw,4.2rem)}h2{font-size:clamp(2.2rem,11vw,3.2rem)}.hero{min-height:auto;padding-top:44px;grid-template-columns:1fr}.hero-copy p:not(.eyebrow){font-size:1rem}.gold-btn,.outline-btn{width:100%;min-height:54px}.arch-photo img{height:460px}.ribbon,.services-panel{width:min(100% - 28px,480px);padding:28px 18px}.accordion-trigger{grid-template-columns:34px 1fr 30px;font-size:.98rem}.accordion-panel p{padding-left:48px;padding-right:6px}.why-grid,.form-grid{grid-template-columns:1fr}.carousel-slide{flex-basis:100%}.carousel-slide img{height:530px}.carousel-btn{width:44px;height:44px;top:auto;bottom:58px}.carousel-btn.prev{left:14px}.carousel-btn.next{right:14px}.consult-card{width:min(100% - 28px,480px)}.summary dl{grid-template-columns:1fr}.form-nav{flex-direction:column}.faq{gap:22px}.faq>div:first-child{justify-self:start;width:100%;padding-top:0}.faq-list summary{grid-template-columns:30px 1fr auto;padding:16px 14px}.final-cta{grid-template-columns:1fr;text-align:center}.final-cta .ornament{margin-left:auto;margin-right:auto}.mini-arch img{height:240px}.footer{padding-bottom:96px}.footer-main{grid-template-columns:1fr;gap:28px;text-align:center}.footer-brand,.footer-socials{justify-content:center}.footer-block a,.footer-block p{margin-left:auto;margin-right:auto}.whatsapp-float{right:16px;bottom:86px;width:54px;height:54px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.reveal{opacity:1;transform:none}}

