:root{--ink:#253129;--sage:#aebfae;--sage-deep:#718878;--cream:#fbfaf7;--gold:#c5a86f;--white:#fff;--line:#dfe4de}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:1.65}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.site-header{height:94px;padding:10px clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:rgba(251,250,247,.96);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(37,49,41,.08)}
.brand img{width:74px;height:74px;object-fit:cover;border-radius:50%}
nav{display:flex;align-items:center;gap:clamp(16px,3vw,42px);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}
.nav-cta{border:1px solid var(--sage-deep);padding:10px 18px;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}
.hero{min-height:calc(100vh - 94px);position:relative;display:flex;align-items:flex-end;overflow:hidden;color:white}
.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%}
.hero-photo{object-fit:cover;object-position:center 52%}
.hero-shade{background:linear-gradient(90deg,rgba(13,19,16,.76) 0%,rgba(13,19,16,.28) 58%,rgba(13,19,16,.05) 100%),linear-gradient(0deg,rgba(13,19,16,.45),transparent 50%)}
.hero-copy{position:relative;z-index:2;width:min(760px,88%);padding:clamp(56px,9vw,120px) clamp(24px,7vw,104px)}
.eyebrow{margin:0 0 20px;font-size:.74rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.eyebrow.dark{color:var(--sage-deep)}
h1,h2,h3,.signature{font-family:"Cormorant Garamond",Georgia,serif}
h1{font-size:clamp(3.1rem,6.3vw,6.5rem);font-weight:500;line-height:.93;letter-spacing:-.025em;margin:0 0 24px}
h2{font-size:clamp(2.55rem,4.6vw,5rem);line-height:1.02;font-weight:500;letter-spacing:-.02em;margin:0}
h3{font-size:1.8rem;line-height:1.05;margin:12px 0}
.hero-text{font-size:clamp(1rem,1.4vw,1.22rem);max-width:610px;margin:0 0 32px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 25px;border:1px solid transparent;font:600 .78rem Montserrat,sans-serif;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:.25s}
.button.light{border-color:rgba(255,255,255,.8);color:white;background:transparent}.button.light:hover{background:white;color:var(--ink)}
.button.dark{background:var(--ink);color:white}.button.dark:hover{background:var(--sage-deep)}
.place{position:absolute;z-index:2;right:clamp(24px,5vw,72px);bottom:28px;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase}
.section{padding:clamp(80px,11vw,150px) clamp(24px,7vw,104px)}
.intro{text-align:center;max-width:1160px;margin:auto}.intro h2{max-width:980px;margin:auto}.intro>p:last-child{max-width:760px;margin:34px auto 0;color:#526057}
.creations{background:white}
.section-heading{display:grid;grid-template-columns:1.3fr .7fr;gap:60px;align-items:end;margin-bottom:55px}.section-heading>p{max-width:460px;color:#647068;margin:0}.section-heading.compact{grid-template-columns:1fr}
.creation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.creation-card{background:var(--cream);border:1px solid var(--line)}.creation-images{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(120px,.65fr);gap:8px;height:460px;overflow:hidden;background:#edf1ec;padding:8px}.creation-images img{width:100%;height:100%;object-fit:contain;background:#e4eae4}.creation-images img:nth-child(2){height:72%;align-self:center}.creation-images img:only-child{grid-column:1/-1}.creation-images img:nth-child(3){display:none}.creation-card.featured{grid-column:1/-1;display:grid;grid-template-columns:1.35fr .65fr;background:#e8eee8}.creation-card.featured .creation-images{height:590px}.creation-card.featured .creation-copy{align-self:center;padding:clamp(38px,5vw,72px)}.creation-copy{padding:24px 26px 28px}.creation-copy h3{font-size:2.25rem;margin:0 0 8px}.creation-copy p{margin:0;color:#647068}.new-label{display:inline-block;margin-bottom:12px;color:var(--sage-deep);font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.creation-note{max-width:1020px;margin:34px auto 0;padding-top:25px;border-top:1px solid var(--line);color:#6b756e;font-size:.78rem;line-height:1.75;text-align:center}
.romantico-card .creation-images img{object-fit:cover}.romantico-card .creation-images img:first-child{object-position:center 78%}.romantico-card .creation-images img:nth-child(2){object-position:27% 72%}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}.steps li{padding:38px 34px;border-right:1px solid var(--line)}.steps li:first-child{padding-left:0}.steps li:last-child{border-right:0}.steps span{color:var(--gold);font:500 1.1rem "Cormorant Garamond",serif}.steps p{color:#647068;margin-bottom:0}
.offer{background:#e8eee8;display:grid;grid-template-columns:1fr .55fr;gap:clamp(50px,8vw,130px);align-items:center}.offer-copy>p:not(.eyebrow){max-width:650px}.fine{font-size:.88rem;color:#65736a}.price-card{background:white;padding:clamp(35px,5vw,66px);box-shadow:0 20px 60px rgba(57,72,61,.1)}.price-card p{margin:0;text-transform:uppercase;letter-spacing:.13em;font-size:.75rem}.price-card strong{display:block;font:500 clamp(3.2rem,5vw,5rem) "Cormorant Garamond",serif;line-height:1.2}.price-card small{display:block;margin-bottom:28px;color:#6a746e}.info-card h3{font-size:clamp(2.35rem,4vw,3.8rem);margin:18px 0 14px}.info-card small{max-width:380px}
.contact{text-align:center;background:var(--ink);color:white}.contact h2{max-width:830px;margin:auto}.contact>p:not(.eyebrow){max-width:680px;margin:26px auto 32px}.contact-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.button.whatsapp{background:#2f7d58;color:white;border-color:#2f7d58}.social-line{font-size:.88rem}.social-line a{color:#f3dfac;border-bottom:1px solid currentColor}
.modal{position:fixed;inset:0;z-index:100;display:none}.modal.open{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(13,19,16,.72)}.modal-panel{position:relative;background:var(--cream);width:min(760px,calc(100% - 28px));max-height:calc(100vh - 28px);overflow:auto;margin:14px auto;padding:clamp(30px,5vw,58px);box-shadow:0 25px 90px rgba(0,0,0,.28)}.modal-panel h2{font-size:clamp(2.5rem,5vw,4.2rem)}.modal-panel>p:not(.eyebrow){color:#647068}.modal-close{position:absolute;right:18px;top:12px;border:0;background:transparent;font-size:2.2rem;color:var(--ink);cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{display:flex;flex-direction:column;gap:7px;font-size:.76rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.form-grid label span{color:#a24f4f}.form-grid label small{font-weight:400;text-transform:none;letter-spacing:0}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid textarea{width:100%;border:1px solid #cfd7cf;background:white;padding:12px 13px;font:400 1rem Montserrat,sans-serif;color:var(--ink);border-radius:0}.form-grid textarea{resize:vertical}.form-grid input:focus,.form-grid textarea:focus{outline:2px solid var(--sage);outline-offset:1px}.captcha-wrap{margin:24px 0 10px;min-height:78px}.form-status{min-height:24px;color:#8a4d4d;font-size:.85rem}.form-submit:disabled{opacity:.45;cursor:not-allowed}body.modal-open{overflow:hidden}
.privacy-summary{margin:24px 0 0;padding-top:18px;border-top:1px solid var(--line);font-size:.72rem;line-height:1.65;color:#6b756e}.privacy-summary a,.legal-content a{color:var(--sage-deep);text-decoration:underline;text-underline-offset:3px}.legal-panel{width:min(900px,calc(100% - 28px))}.legal-content{margin-top:30px;color:#526057}.legal-content h3{margin:32px 0 12px;font-size:1.75rem;color:var(--ink)}.legal-content p{margin:0 0 20px}.legal-content p:last-child{margin-bottom:0}
footer{display:grid;grid-template-columns:auto 1fr auto;gap:25px;align-items:center;padding:28px clamp(24px,7vw,104px);background:#182019;color:#dce2dd;font-size:.78rem}footer img{width:58px;height:58px;object-fit:cover;border-radius:50%}.signature{display:flex;flex-direction:column;align-items:flex-end;margin:0;color:#f3dfac}.signature-lead{font:500 2rem/1 "Cormorant Garamond",serif;letter-spacing:.02em}.signature-brand{margin-top:6px;font-size:.78rem;letter-spacing:.1em}
.legal-links{grid-column:1/-1;justify-content:center;gap:10px;padding-top:18px;border-top:1px solid rgba(220,226,221,.18);font-size:.7rem;letter-spacing:.05em;text-transform:none;color:#bac4bc}.legal-links a{border-bottom:1px solid transparent}.legal-links a:hover,.legal-links a:focus{color:#f3dfac;border-bottom-color:currentColor}
@media(max-width:820px){.site-header{height:76px;padding:8px 18px}.brand img{width:58px;height:58px}nav a:not(.nav-cta){display:none}.legal-links a:not(.nav-cta){display:inline}.hero{min-height:720px}.hero-copy{padding:70px 24px}.place{left:24px;right:auto}.section-heading,.offer{grid-template-columns:1fr;gap:30px}.creation-grid{grid-template-columns:1fr}.creation-card.featured{grid-column:auto;display:block}.creation-card.featured .creation-images,.creation-images{height:500px}.steps{grid-template-columns:1fr}.steps li,.steps li:first-child{padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}footer{grid-template-columns:auto 1fr}.signature{grid-column:1/-1;align-items:flex-start;margin:0}.signature-lead{font-size:1.85rem}h1{font-size:3.55rem}}
@media(max-width:560px){.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.captcha-wrap{transform:scale(.88);transform-origin:left top;margin-bottom:-2px}}
@media(max-width:520px){.legal-links{gap:7px;font-size:.64rem;letter-spacing:0}.legal-panel{padding:30px 20px}.legal-content{margin-top:24px}.legal-content h3{font-size:1.55rem}}
@media(max-width:460px){.hero-photo{object-position:62% center}.hero-shade{background:linear-gradient(0deg,rgba(13,19,16,.84),rgba(13,19,16,.08) 85%)}.hero-copy{align-self:flex-end;padding-bottom:105px}.creation-images,.creation-card.featured .creation-images{grid-template-columns:minmax(0,1.7fr) minmax(92px,.6fr);height:390px}.button{width:100%}.modal-panel{padding:30px 20px}.captcha-wrap{transform:scale(.78);margin-bottom:-10px}}
