:root{--ink:#24332c;--forest:#233b31;--sage:#839585;--cream:#f7f3ea;--paper:#fffdf8;--gold:#b59561;--muted:#6c746e;--line:#d9d4c8;--serif:"Cormorant Garamond",Georgia,serif;--names:"Italiana",Georgia,serif;--sans:"Montserrat",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--sans);font-size:15px;line-height:1.7}a{color:inherit}button,input,select{font:inherit}.hero{min-height:100svh;position:relative;display:grid;place-items:center;overflow:hidden;color:#fff}.hero__photo,.hero__shade{position:absolute;inset:0;width:100%;height:100%}.hero__photo{object-fit:cover;object-position:center}.hero__shade{background:linear-gradient(180deg,rgba(11,23,19,.42),rgba(11,23,19,.1) 42%,rgba(11,23,19,.58))}.nav{position:absolute;z-index:2;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:30px clamp(24px,6vw,90px);border-bottom:1px solid rgba(255,255,255,.3)}.nav__mark{font:500 24px var(--serif);text-decoration:none;letter-spacing:.08em}.nav__mark span{color:#d8c49f;font-style:italic}.nav__links{display:flex;gap:34px}.nav__links a{text-decoration:none;text-transform:uppercase;font-size:10px;letter-spacing:.2em}.hero__content{z-index:1;text-align:center;padding:120px 20px 80px;text-shadow:0 2px 28px rgba(0,0,0,.28)}.eyebrow{text-transform:uppercase;letter-spacing:.28em;font-weight:600;font-size:10px;color:var(--gold)}.eyebrow--light{color:#fff}.hero h1{font:400 clamp(70px,11vw,154px)/.62 var(--serif);margin:32px 0 36px;letter-spacing:-.045em}.hero h1 small{display:block;font:500 11px var(--sans);text-transform:uppercase;letter-spacing:.7em;margin:0 0 38px;padding-left:.7em}.hero h1 span{display:block;font-family:var(--names);font-weight:400;letter-spacing:-.055em}.hero h1 i{display:block;font-size:.36em;line-height:.8;color:#dac8a5;font-weight:400}.hero__date{font-family:var(--serif);font-size:19px;letter-spacing:.45em;margin:0 0 32px}.hero__place{position:absolute;z-index:1;right:clamp(24px,6vw,90px);bottom:30px;margin:0;text-transform:uppercase;font-size:9px;letter-spacing:.25em}.button{display:inline-flex;gap:22px;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.18em;font-size:10px;font-weight:600;text-decoration:none;padding:15px 22px;border:1px solid;transition:.25s ease;cursor:pointer}.button--light{border-color:rgba(255,255,255,.65)}.button--light:hover{background:#fff;color:var(--forest);text-shadow:none}.button--dark{color:#fff;background:var(--forest);border-color:var(--forest);min-width:240px}.button--dark:hover{background:#172a22}.section{padding:clamp(80px,10vw,145px) clamp(22px,7vw,110px)}.intro{text-align:center;max-width:900px;margin:auto}.flourish{font:30px var(--serif);color:var(--gold)}h2{font:400 clamp(42px,6vw,74px)/1 var(--serif);letter-spacing:-.03em;margin:18px 0 26px}.intro__copy{max-width:630px;margin:auto;color:var(--muted);font-family:var(--serif);font-size:21px}.script{font:italic 27px var(--serif);color:var(--gold);margin:26px 0 0}.details{background:var(--paper)}.details__heading{text-align:center;margin-bottom:55px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1200px;margin:auto}.detail-card{position:relative;min-height:440px;padding:54px 42px;border:1px solid var(--line);background:var(--cream);display:flex;flex-direction:column;align-items:center;text-align:center}.detail-card+.detail-card{border-left:0}.detail-card--green{background:var(--forest);color:white;transform:translateY(-18px);border-color:var(--forest)}.detail-card__number{position:absolute;top:20px;left:24px;color:var(--gold);font:italic 16px var(--serif)}.icon svg{width:47px;height:47px;fill:none;stroke:currentColor;stroke-width:1.35;margin:12px 0 28px}.detail-card h3{font:500 28px/1.05 var(--serif);margin:8px 0 12px}.detail-card p:not(.eyebrow){color:var(--muted);margin:0}.detail-card--green p:not(.eyebrow){color:#cbd2cd}.detail-card a{margin-top:auto;padding-top:28px;text-transform:uppercase;font-size:9px;letter-spacing:.18em;text-underline-offset:5px}.countdown{text-align:center;background:linear-gradient(rgba(23,48,38,.9),rgba(23,48,38,.9)),url(carlos-zenaida.jpeg) center 62%/cover;color:#fff}.countdown h2{margin-top:14px}.countdown__grid{display:grid;grid-template-columns:repeat(4,1fr);max-width:820px;margin:55px auto 0}.countdown__grid div{border-right:1px solid rgba(255,255,255,.24)}.countdown__grid div:last-child{border:0}.countdown strong{display:block;font:400 clamp(45px,6vw,72px) var(--serif)}.countdown span{font-size:9px;text-transform:uppercase;letter-spacing:.22em;color:#d5dcd8}.rsvp{display:grid;grid-template-columns:minmax(250px,.65fr) minmax(500px,1.35fr);gap:clamp(50px,7vw,110px);max-width:1400px;margin:auto}.rsvp__intro>p:not(.eyebrow){max-width:390px;color:var(--muted)}.rsvp__note{display:flex;align-items:center;gap:16px;margin-top:45px;color:var(--gold)}.rsvp__note>span{font:400 74px/1 var(--serif)}.rsvp__note p{font-size:12px;line-height:1.1;letter-spacing:.2em;border-left:1px solid var(--gold);padding-left:16px}.rsvp__note small{color:var(--muted)}.form{display:grid;grid-template-columns:1fr 1fr;gap:30px 24px;background:var(--paper);border:1px solid var(--line);padding:clamp(28px,5vw,58px)}.guest-fields{display:grid;grid-template-columns:1fr 1fr;gap:30px 24px;grid-column:1/-1}.field{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;min-width:0}.field--full{grid-column:1/-1}.field>span,.field legend{font:600 10px var(--sans);text-transform:uppercase;letter-spacing:.13em}.field input[type=text],.field select{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;border-radius:0;padding:12px 3px;color:var(--ink);outline:none}.field input:focus,.field select:focus{border-color:var(--gold)}.choice-row{display:flex;gap:10px;flex-wrap:wrap}.choice input{position:absolute;opacity:0;pointer-events:none}.choice span{display:block;border:1px solid var(--line);padding:10px 14px;font-size:12px;cursor:pointer}.choice input:checked+span,.choice input:focus-visible+span{background:var(--forest);border-color:var(--forest);color:#fff}.field-error{color:#9a3d35;min-height:1em;font-size:11px}.form__footer{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:30px}.form__footer p{color:var(--muted);font-size:10px}.form__message{display:none;grid-column:1/-1;padding:16px;border-left:3px solid var(--sage);background:#edf2ee}.form__message.is-error{display:block;border-color:#a04b44;background:#f8ecea}.form__message.is-success{display:block}footer{text-align:center;padding:75px 20px;background:#172a22;color:#fff}footer p{text-transform:uppercase;letter-spacing:.25em;font-size:9px;margin:14px}footer h2{font-size:45px;margin:0}footer h2 i{color:#c5a978;font-weight:400}footer small{display:block;letter-spacing:.3em;color:#b8c3bd;margin-top:20px}
@media(max-width:850px){.nav__links{display:none}.hero__place{left:0;right:0;text-align:center}.detail-grid{grid-template-columns:1fr}.detail-card+.detail-card{border-left:1px solid var(--line);border-top:0}.detail-card--green{transform:none;border-color:var(--forest)}.rsvp{grid-template-columns:1fr}.rsvp__intro{text-align:center}.rsvp__intro>p:not(.eyebrow){margin-inline:auto}.rsvp__note{justify-content:center}.form{grid-template-columns:1fr}.guest-fields{grid-template-columns:1fr}.countdown__grid{grid-template-columns:repeat(2,1fr);gap:28px}.countdown__grid div:nth-child(2){border:0}.form__footer{align-items:stretch;flex-direction:column;gap:15px}.button--dark{width:100%}}
@media(max-width:480px){.hero h1{font-size:68px}.hero__date{font-size:14px}.section{padding-inline:18px}.form{padding:25px 18px}.choice-row{display:grid;grid-template-columns:1fr 1fr}.choice span{text-align:center;height:100%}.detail-card{padding-inline:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
