:root{--color-bg:#fddddc;--color-bg-soft:#f9d4d1;--color-primary:#dd9694;--color-secondary:#c98682;--color-accent:#b1796f;--color-text:#91645a;--color-surface:#fff7f6;--font-title:"Playfair Display", Georgia, serif;--font-body:Montserrat, Lato, Inter, system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);margin:0}a{color:inherit;text-decoration:none}main{overflow:hidden}.reveal{opacity:0;transition:opacity .7s,transform .7s;transition-delay:var(--reveal-delay,0s);transform:translateY(18px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.hero{background:linear-gradient(135deg, var(--color-bg), var(--color-surface));min-height:100vh;padding:clamp(1rem,2vw,2rem)}.site-header{border:1px solid #c9868252;border-radius:28px 28px 0 0;justify-content:space-between;align-items:center;max-width:1180px;margin:0 auto;padding:1rem clamp(1rem,3vw,2.5rem);display:flex}.brand{display:inline-flex}.brand img{width:clamp(72px,9vw,132px);height:auto}.nav{letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:clamp(.9rem,3vw,2.8rem);font-size:.78rem;font-weight:700;display:flex}.nav a:last-child{background:var(--color-primary);color:#fff;border-radius:999px;padding:.82rem 1.25rem}.hero-grid{border:1px solid #c9868252;border-top:0;grid-template-columns:minmax(0,.95fr) minmax(280px,1.05fr);align-items:center;gap:clamp(2rem,4vw,4rem);max-width:1180px;min-height:calc(100vh - 146px);margin:0 auto;padding:clamp(2rem,6vw,5rem);display:grid}.eyebrow{color:var(--color-secondary);letter-spacing:.2em;text-transform:uppercase;margin:0 0 1rem;font-size:.78rem;font-weight:800}h1,h2,h3,.hero-slide-title{font-family:var(--font-title);margin:0;font-weight:500;line-height:1.04}h1,.hero-slide-title{color:var(--color-secondary);max-width:10ch;font-size:clamp(2.7rem,8vw,5.5rem)}.hero-copy-stage{display:grid}.hero-slide-copy{grid-area:1/1;transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1),filter .9s}.hero-slide-copy:not(.active){filter:blur(3px);opacity:0;pointer-events:none;transform:translateY(.75rem)}.hero-slide-copy.active{filter:blur();opacity:1;transform:translateY(0)}h2{color:var(--color-secondary);font-size:clamp(2rem,5vw,3.5rem)}h3{color:var(--color-text);font-size:1.7rem}.hero-text{border-top:1px solid #91645a47;max-width:34rem;margin:1.7rem 0 2rem;padding-top:1.45rem;font-size:clamp(1rem,1.4vw,1.18rem);line-height:1.8}.hero-actions{flex-wrap:wrap;gap:.9rem;display:flex}.hero-carousel-controls{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1.5rem;display:flex}.hero-carousel-controls button{color:var(--color-secondary);cursor:pointer;font:inherit;background:#fff7f6b8;border:1px solid #c9868273;border-radius:999px;transition:background .18s,border-color .18s,transform .18s}.hero-carousel-controls button:hover,.hero-carousel-controls button:focus-visible{border-color:var(--color-primary);outline:none}.hero-dots{align-items:center;gap:.45rem;padding:0 .2rem;display:flex}.hero-arrow{justify-content:center;align-items:center;width:2.55rem;height:2.55rem;padding:0;display:inline-flex}.hero-arrow span{margin-top:-.15rem;font-family:Georgia,serif;font-size:1.7rem;line-height:1}.hero-dots button{width:.72rem;height:.72rem;min-height:0;padding:0}.hero-dots button.active{background:var(--color-primary);border-color:var(--color-primary);transform:scale(1.28)}.button{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;min-height:3.2rem;padding:0 1.65rem;font-size:.88rem;font-weight:800;transition:transform .18s,box-shadow .18s;display:inline-flex}.button:hover,.button:focus-visible{transform:translateY(-2px);box-shadow:0 14px 28px #91645a2e}.button-primary{background:var(--color-primary);color:#fff}.button-secondary{color:var(--color-secondary);background:#fff7f6b8;border:1px solid #c9868273}.hero-photo{place-self:center end;width:100%;max-width:560px;padding:clamp(1rem,2.6vw,2rem);position:relative}.hero-photo:before,.hero-photo:after{content:"";z-index:0;position:absolute}.hero-photo:before{background:linear-gradient(145deg,#fff7f6f5,#f9d4d1ad);border:1px solid #c9868247;border-radius:48% 52% 44% 56%/58% 44% 56% 42%;animation:8s ease-in-out infinite frame-breathe;inset:5% 7% 2% 4%;transform:rotate(-4deg)}.hero-photo:after{background:radial-gradient(circle,#dd969433 0 .16rem,#0000 .18rem) 0 0/1rem 1rem,linear-gradient(135deg,#fff7f66b,#dd969424);border-radius:999px;width:34%;height:34%;top:12%;left:2%}.hero-photo img{filter:saturate(.92)sepia(.05)brightness(1.02);object-fit:cover;z-index:1;border:1px solid #fff7f6e0;border-radius:46% 54% 43% 57%/56% 46% 54% 44%;width:100%;height:auto;position:relative;transform:rotate(1.5deg);box-shadow:0 28px 70px #91645a29}.hero-photo-stack{z-index:1;display:grid;position:relative}.hero-photo-stack img{grid-area:1/1;transition:opacity 1s cubic-bezier(.22,1,.36,1),transform 1s cubic-bezier(.22,1,.36,1),filter 1s}.hero-photo-stack img:not(.active){filter:saturate(.86)sepia(.05)brightness(1.02);opacity:0;pointer-events:none;transform:rotate(1.5deg)scale(1.03)}.hero-photo-stack img.active{filter:saturate(.92)sepia(.05)brightness(1.02);opacity:1;z-index:2;transform:rotate(1.5deg)scale(1)}@keyframes frame-breathe{0%,to{transform:rotate(-4deg)scale(1)}50%{transform:rotate(-2deg)scale(1.025)}}.intro,.services,.contact{max-width:1180px;margin:0 auto;padding:clamp(3.5rem,7vw,6rem) clamp(1.25rem,4vw,2.5rem)}.intro{grid-template-columns:.9fr 1fr;align-items:end;gap:2rem;display:grid}.intro p:last-child,.contact p{margin:0;font-size:1.1rem;line-height:1.8}.section-heading{text-align:center;margin-bottom:2rem}.service-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;display:grid}.service-card{background:linear-gradient(#fff7f6e6,#f9d4d1c7);border:1px solid #c9868240;border-radius:24px;min-height:260px;padding:1.35rem}.service-card span{color:var(--color-primary);letter-spacing:.18em;margin-bottom:2.2rem;font-size:.78rem;font-weight:800;display:block}.service-card h3{font-size:clamp(1.15rem,1.4vw,1.35rem);line-height:1.12}.service-card p{margin:1rem 0 0;line-height:1.7}.contact{background:var(--color-bg);border:1px solid #c986824d;border-radius:30px;justify-content:space-between;align-items:center;margin-bottom:clamp(1.25rem,4vw,2.5rem);display:flex}.whatsapp-float{color:#fff;z-index:20;background:#25d366;border-radius:999px;justify-content:center;align-items:center;width:4rem;height:4rem;animation:1.8s ease-in-out infinite whatsapp-pulse;display:inline-flex;position:fixed;bottom:clamp(1rem,3vw,1.6rem);right:clamp(1rem,3vw,1.6rem);box-shadow:0 16px 36px #25d3665c}.whatsapp-float:before{border-radius:inherit;content:"";border:1px solid #25d3668c;animation:1.8s ease-in-out infinite whatsapp-ring;position:absolute;inset:-.45rem}.whatsapp-float svg{fill:none;width:2.25rem;height:2.25rem;position:relative}.whatsapp-chat{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.35px}.whatsapp-phone{fill:currentColor}.whatsapp-float:hover,.whatsapp-float:focus-visible{outline:none;animation-play-state:paused;transform:translateY(-2px)scale(1.04);box-shadow:0 18px 40px #25d36670}@keyframes whatsapp-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes whatsapp-ring{0%{opacity:.8;transform:scale(.9)}to{opacity:0;transform:scale(1.35)}}@media (max-width:920px){.site-header{border-radius:24px}.nav a:not(:last-child){display:none}.hero-grid{border-top:1px solid #c9868252;border-radius:24px;grid-template-columns:1fr;min-height:auto;margin-top:1rem}h1{max-width:11ch}.hero-photo{justify-self:center;max-width:420px}.intro,.contact{grid-template-columns:1fr;align-items:start}.contact{flex-direction:column;gap:2rem}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.hero{padding:.75rem}.site-header,.hero-grid{padding:1rem}.hero-photo{padding:.8rem}.hero-actions,.hero-carousel-controls,.button,.contact .button{width:100%}.whatsapp-float{width:3.5rem;height:3.5rem}.whatsapp-float svg{width:2rem;height:2rem}.hero-carousel-controls{justify-content:space-between}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}.whatsapp-float:before{display:none}}
