:root{--forest:#203a2f;--forest-2:#345640;--sage:#a7b394;--cream:#f6f4ec;--gold:#d6bb83;--ink:#20251f;--muted:#6e746b;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--ink);background:var(--cream)}.navbar{transition:background .25s,box-shadow .25s}.nav-glass{background:rgba(20,36,29,.46);backdrop-filter:blur(10px)}.nav-solid{background:var(--forest);box-shadow:0 8px 28px #17271e24}.brand-mark{font:600 1.05rem var(--serif);letter-spacing:.03em;color:white;text-decoration:none;line-height:1.08}.brand-mark small{display:block;font:500 .6rem var(--sans);letter-spacing:.22em;text-transform:uppercase;color:#e2d4b3}.nav-link{color:#fff!important;font-size:.82rem;font-weight:600;letter-spacing:.04em}.nav-link:hover{color:var(--gold)!important}.btn-gold{background:var(--gold);color:#27362b;border:1px solid var(--gold);border-radius:999px;font-weight:700;padding:.82rem 1.35rem;transition:.2s}.btn-gold:hover{background:#e4cf9e;border-color:#e4cf9e;color:#203a2f;transform:translateY(-2px)}.btn-outline-light{border-radius:999px;padding:.8rem 1.35rem}.hero{min-height:min(790px,100svh);display:flex;align-items:center;position:relative;background:linear-gradient(90deg,rgba(14,30,22,.8) 0%,rgba(14,30,22,.47) 47%,rgba(14,30,22,.04) 100%),linear-gradient(0deg,rgba(14,30,22,.25),transparent 46%),url('assets/casamentos/header-ceremony.png') center 53%/cover;color:#fff}.hero::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.1);pointer-events:none}.hero-content{position:relative;z-index:1;padding-top:6rem;padding-bottom:5rem}.eyebrow{display:flex;align-items:center;gap:.7rem;text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:700;color:var(--gold)}.eyebrow:before{content:"";height:1px;width:34px;background:currentColor}.hero h1{font:500 clamp(3.2rem,7.2vw,6.7rem)/.98 var(--serif);letter-spacing:-.04em;max-width:780px;margin:1.35rem 0 1.2rem}.hero h1 em{font-weight:400;color:#e7d5ac}.hero-copy{font-size:1.08rem;line-height:1.75;color:#f2f0e9;max-width:520px}.hero-note{font:italic 1rem var(--serif);color:#f1e2bf;margin-top:2.3rem}.hero-badge{position:absolute;right:7%;bottom:11%;z-index:1;border-left:1px solid var(--gold);padding:.2rem 0 .2rem 1rem;font:italic 1rem var(--serif);color:#fff}.section-pad{padding:105px 0}.section-kicker{text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;font-weight:700;color:var(--forest-2)}.display-serif{font:500 clamp(2.4rem,4.5vw,4.25rem)/1.08 var(--serif);letter-spacing:-.03em}.lead-copy{color:var(--muted);font-size:1.05rem;line-height:1.85}.story-frame{position:relative;padding:0 0 25px 25px}.story-frame:before{content:"";position:absolute;left:0;bottom:0;width:68%;height:60%;border:1px solid var(--gold);z-index:0}.story-image{position:relative;z-index:1;width:100%;height:550px;object-fit:cover}.story-caption{position:absolute;z-index:2;right:-15px;bottom:43px;background:#fff;padding:1.05rem 1.3rem;box-shadow:0 12px 36px #19291c1a;font:italic 1.1rem var(--serif)}.story-copy{max-width:530px}.stat-line{border-top:1px solid #d7d8cf;margin-top:2rem;padding-top:1.4rem;display:flex;gap:2rem}.stat strong{display:block;font:500 1.5rem var(--serif);color:var(--forest)}.stat span{display:block;font-size:.76rem;color:var(--muted);margin-top:.3rem}.feature-band{background:var(--forest);color:#fff}.feature-band .section-kicker{color:var(--gold)}.feature-item{padding:2.2rem 1.4rem 1rem;border-top:1px solid rgba(255,255,255,.25);height:100%}.feature-num{font:italic 1rem var(--serif);color:var(--gold)}.feature-item h3{font:500 1.45rem var(--serif);margin:1.2rem 0 .8rem}.feature-item p{color:#d9dfd5;font-size:.91rem;line-height:1.7;max-width:290px}.gallery-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:260px 260px;gap:14px}.gallery-item{position:relative;overflow:hidden;background:#d8ded2}.gallery-item:first-child{grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.gallery-item:hover img{transform:scale(1.05)}.gallery-item:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(11,25,17,.7))}.gallery-label{position:absolute;z-index:1;left:1.2rem;bottom:1rem;color:white;font:500 1.15rem var(--serif)}.quote-panel{background:#e9e9df}.quote-mark{font:5rem/.7 var(--serif);color:var(--gold)}.rating-big{font:500 4.2rem/.95 var(--serif);color:var(--forest)}.stars{color:#bc9653;letter-spacing:.12em}.rating-card{background:#fff;padding:2rem;border:1px solid #e1e1d8;height:100%}.rating-small{font-size:.76rem;color:var(--muted)}.location{background:var(--forest);color:#fff}.location .section-kicker{color:var(--gold)}.address{font-size:1rem;line-height:1.8;color:#e0e5dc}.map-card{min-height:340px;background:linear-gradient(0deg,rgba(21,44,31,.36),rgba(21,44,31,.03)),url('assets/casamentos/casamento-03.jpeg') center/cover;border:1px solid rgba(255,255,255,.2);position:relative}.map-card a{position:absolute;right:1rem;bottom:1rem}.footer{background:#172a21;color:#dfe3d8;padding:1.5rem 0;font-size:.8rem}.footer a{color:#e0c990;text-decoration:none}.whatsapp-float{position:fixed;z-index:20;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#25d366;color:white;display:grid;place-items:center;box-shadow:0 8px 24px #0003;text-decoration:none;font-size:1.65rem;border:3px solid white}.whatsapp-float:hover{transform:translateY(-3px);color:white}.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:767px){.hero{min-height:760px;background-position:61% center;background-image:linear-gradient(90deg,rgba(14,30,22,.76),rgba(14,30,22,.33)),linear-gradient(0deg,rgba(14,30,22,.3),transparent 50%),url('assets/casamentos/header-ceremony.png')}.hero h1{font-size:clamp(3rem,13vw,4.6rem)}.hero-badge{right:auto;left:1.5rem;bottom:2rem}.section-pad{padding:76px 0}.story-image{height:390px}.story-caption{right:0;bottom:22px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:220px 180px 180px}.gallery-item:first-child{grid-row:span 2}.gallery-item:last-child{grid-column:span 2}.map-card{min-height:270px}.navbar-collapse{background:var(--forest);padding:1rem 1.2rem;margin:0 -1rem;border-radius:0 0 12px 12px}.nav-glass .navbar-toggler{border-color:#fff6}.nav-glass .navbar-toggler-icon{filter:brightness(0) invert(1)}}
