/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}.table{display:table}}:root{--cream:#dcc9a8;--paper:#f1e4c9;--oxblood:#741f2b;--ink:#281d1b;--muted:#7d6861;--line:#741f2b33}*{box-sizing:border-box}html{background:var(--cream)}body{color:var(--ink);background:var(--cream);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.form-page{isolation:isolate;background:#d7c29d;place-items:start center;min-height:100svh;padding:clamp(38px,5vw,68px) clamp(16px,5vw,52px);display:grid;position:relative}.form-page:before{content:"";z-index:-2;background:url(/riviera-maya-form-background.png) 50%/cover no-repeat;position:fixed;inset:0}.form-page:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#e7d3b21f,#b9936514);position:fixed;inset:0}.form-card{z-index:1;background:radial-gradient(circle at 50% 0,#fffae8ad,#0000 42%),repeating-linear-gradient(0deg,#66492805 0 1px,#0000 1px 4px),#f1e4c9f7;border:1px solid #6f471e33;border-radius:1px;width:min(900px,100%);padding:30px clamp(28px,6.2vw,70px) 28px;position:relative;box-shadow:0 24px 90px #49291833,inset 0 0 52px #7e5b2f14}.invitation-masthead{color:#111;text-transform:uppercase;margin:0 calc(-1*clamp(28px,6.2vw,70px)) clamp(62px,8vw,90px);font-family:Didot,"Bodoni 72",Bodoni MT,Georgia,serif;position:relative}.masthead-details{letter-spacing:.27em;white-space:nowrap;justify-content:space-between;gap:24px;padding:0 clamp(28px,5vw,46px) 28px;font-size:clamp(.68rem,1.8vw,1rem);font-weight:600;display:flex}.masthead-details span:last-child{font-style:italic}.wedding-mark{min-height:58px;color:var(--oxblood);text-align:center;border-top:1px solid #741f2b24;border-bottom:1px solid #741f2b24;grid-template-columns:1fr minmax(160px,260px) 1fr;align-items:center;padding:0 clamp(28px,5vw,46px);display:grid;position:relative}.wedding-mark>span{letter-spacing:.22em;font-size:clamp(1rem,3vw,1.9rem);font-weight:500}.wedding-mark>span:first-child{grid-column:1}.wedding-mark>span:last-child{grid-column:3}.monogram{z-index:2;object-fit:contain;pointer-events:none;width:clamp(150px,24vw,250px);height:clamp(150px,24vw,250px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.form-heading{text-align:center;max-width:760px;margin:0 auto clamp(36px,5vw,52px)}.eyebrow{color:var(--oxblood);letter-spacing:.2em;text-transform:uppercase;margin:0 0 12px;font-size:.72rem;font-weight:750}h1{letter-spacing:-.035em;margin:0;font-family:Didot,"Bodoni 72",Bodoni MT,Georgia,serif;font-size:clamp(2.2rem,7vw,4rem);font-weight:400;line-height:1}.form-heading h1{color:#101010;letter-spacing:.045em;text-transform:uppercase;font-size:clamp(2.2rem,6.4vw,4.15rem);line-height:1.04}.form-heading h1 span{white-space:nowrap}.form-heading>p:last-child,.success-state>p:not(.eyebrow){color:#201c1b;max-width:650px;margin:0 auto;font-family:Didot,"Bodoni 72",Bodoni MT,Georgia,serif;font-size:clamp(1rem,2.6vw,1.38rem);line-height:1.55}form{gap:clamp(20px,3vw,28px);display:grid}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,28px) clamp(20px,4vw,36px);display:grid}.location-grid{grid-template-columns:1.3fr 1fr .95fr}.full-width{grid-column:1/-1}.field{gap:8px;display:grid}label,legend{color:#171313;letter-spacing:.22em;text-transform:uppercase;font-family:Didot,"Bodoni 72",Bodoni MT,Georgia,serif;font-size:clamp(.7rem,1.7vw,.98rem);font-weight:600}label span,legend span{color:var(--muted);letter-spacing:0;text-transform:none;font-size:.7rem;font-weight:500}.optional-note{letter-spacing:.08em;text-transform:uppercase;margin-left:.32em;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:.58em;font-weight:500;display:inline-block}input{width:100%;min-height:clamp(48px,7vw,66px);color:var(--ink);background:#ffffff2b;border:1px solid #8b1e2d70;border-radius:0;outline:none;padding:0 15px;font-family:Georgia,Times New Roman,serif;font-size:1rem;transition:border-color .2s,box-shadow .2s,background .2s}input:focus{border-color:var(--oxblood);background:#ffffffc7;box-shadow:0 0 0 3px #741f2b14}.honeypot{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.submit-button{color:#fff9f6;cursor:pointer;letter-spacing:.3em;text-transform:uppercase;background:linear-gradient(100deg,#760018,#a50021 53%,#760018);border:1px solid #700016;border-radius:0;min-height:56px;margin-top:-4px;font-family:Didot,"Bodoni 72",Bodoni MT,Georgia,serif;font-size:clamp(.78rem,1.9vw,1rem);font-weight:500;box-shadow:inset 0 0 25px #35000b2e}.submit-button:hover{background:linear-gradient(100deg,#650013,#90001c 53%,#650013)}.submit-button:disabled{opacity:.62;cursor:wait}.save-date-button{color:#fffaf0;letter-spacing:.26em;text-align:center;text-transform:uppercase;background:linear-gradient(100deg,#193d2d,#2d5b43 53%,#193d2d);border:1px solid #17392a;place-items:center;min-height:56px;margin-top:-8px;font-family:Didot,"Bodoni 72",Bodoni MT,Georgia,serif;font-size:clamp(.78rem,1.9vw,1rem);font-weight:500;text-decoration:none;display:grid;box-shadow:inset 0 0 22px #0519102e}.save-date-button:hover{background:linear-gradient(100deg,#133224,#244c37 53%,#133224)}.couple-signature{color:#151111;text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;margin-top:2px;font-family:Didot,"Bodoni 72",Bodoni MT,Georgia,serif;display:grid}.couple-signature span{background:#8b1e2d6b;height:1px;display:block}.couple-signature b{letter-spacing:.34em;white-space:nowrap;font-size:clamp(.72rem,1.7vw,.92rem);font-weight:500}.form-error{color:#9d1d2f;text-align:center;margin:0;font-size:.85rem}.success-card .invitation-masthead{margin-bottom:clamp(56px,8vw,96px)}.success-state{text-align:center;padding:0 0 36px}.success-display{color:var(--oxblood);letter-spacing:.16em;text-transform:uppercase;text-align:center;margin:0;font-family:Didot,"Bodoni 72",Bodoni MT,Georgia,serif;font-size:clamp(1.2rem,3.24vw,1.95rem);font-weight:500;line-height:1}.success-state>p{margin:0}.ornament-divider{justify-content:center;align-items:center;gap:10px;width:min(200px,55%);margin:16px auto;display:flex}.ornament-line{background:#8b1e2d66;flex:1;height:1px}.ornament-dot{background:var(--oxblood);flex-shrink:0;width:5px;height:5px;transform:rotate(45deg)}.success-film{width:min(100%,430px);margin:30px auto 0}.success-film .success-display{margin-bottom:18px}.save-date-heading{white-space:nowrap}.video-frame{background:#160f10;border:1px solid #741f2b38;border-radius:14px;position:relative;overflow:hidden;box-shadow:0 18px 50px #49291824}.success-video{object-fit:contain;width:100%;max-height:520px;display:block}.video-play-button{cursor:pointer;background:#fffaf0f0;border:0;border-radius:50%;place-items:center;width:64px;height:64px;margin:0;padding:0;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 30px #0000004d}.video-play-icon{border-style:solid;border-width:12px 0 12px 20px;border-color:transparent transparent transparent var(--oxblood);margin-left:4px}.text-button{min-height:44px;color:var(--oxblood);cursor:pointer;text-underline-offset:5px;background:0 0;border:0;margin-top:28px;text-decoration:underline}.video-only-page{place-items:center}.video-only-card{background:#f1e4c9f7;border:1px solid #6f471e33;width:min(760px,100%);padding:clamp(12px,2.5vw,22px);box-shadow:0 24px 90px #49291833,inset 0 0 42px #7e5b2f14}.video-only-player{object-fit:contain;background:#160f10;width:100%;max-height:calc(100svh - 90px);display:block}.admin-page{background:radial-gradient(circle at 18% 12%,#fff7e09e,#0000 32%),repeating-linear-gradient(2deg,#5c3f2106 0 1px,#0000 1px 5px),linear-gradient(135deg,#e5d4b5,#cfb68e);min-height:100vh;padding:48px 24px}.admin-login-page{background:radial-gradient(circle at 18% 12%,#fff7e09e,#0000 32%),repeating-linear-gradient(2deg,#5c3f2106 0 1px,#0000 1px 5px),linear-gradient(135deg,#e5d4b5,#cfb68e);place-items:center;min-height:100svh;padding:24px;display:grid}.admin-login-card{text-align:center;background:#f1e4c9f7;border:1px solid #6f471e33;width:min(470px,100%);padding:clamp(28px,6vw,52px);box-shadow:0 24px 90px #49291833,inset 0 0 42px #7e5b2f14}.admin-login-card h1{margin-bottom:12px}.admin-login-card>p:not(.eyebrow,.form-error){color:var(--muted);margin:0 0 28px}.admin-login-card .field{text-align:left}.admin-shell{max-width:1180px;margin:0 auto}.admin-header{justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px;display:flex}.admin-header h1{font-size:clamp(2rem,5vw,3.5rem)}.admin-actions{gap:10px;display:flex}.admin-actions a{border:1px solid var(--oxblood);color:var(--oxblood);padding:11px 14px;font-size:.78rem;font-weight:700;text-decoration:none}.submission-table{border-collapse:collapse;background:#fffdf8;width:100%;box-shadow:0 18px 60px #42292214}.submission-table th,.submission-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:14px;font-size:.85rem}.submission-table th{color:var(--oxblood);letter-spacing:.09em;text-transform:uppercase;font-size:.7rem}.empty-admin{border:1px solid var(--line);background:var(--paper);text-align:center;padding:40px}.denied{text-align:center;place-items:center;min-height:100vh;padding:24px;display:grid}@media (max-width:700px){.form-page{place-items:start center;padding:20px 12px}.form-card{padding:26px 20px 32px}.invitation-masthead{margin:0 -20px 42px}.masthead-details{letter-spacing:.11em;text-align:center;white-space:nowrap;justify-content:space-between;gap:8px;padding:0 14px 29px;font-size:clamp(.66rem,2.7vw,.75rem);display:flex}.wedding-mark{grid-template-columns:minmax(0,1fr) 150px minmax(0,1fr);min-height:132px;padding:0 10px}.wedding-mark>span{letter-spacing:.12em;font-size:.8rem}.monogram{width:150px;height:150px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.form-heading{margin-bottom:48px}.form-heading h1{letter-spacing:.04em;font-size:clamp(1.9rem,9vw,2.35rem);line-height:.96}.form-heading h1 span{display:block}.form-heading>p:last-child{font-size:1rem;line-height:1.5}form{gap:16px}.field-grid{grid-template-columns:1fr;gap:16px}.field{gap:6px}.full-width{grid-column:auto}label,legend{letter-spacing:.18em;font-size:.72rem}input{min-height:52px}.couple-signature{gap:12px}.couple-signature b{letter-spacing:.24em}.success-card .invitation-masthead{margin-bottom:44px}.success-state{padding:0 0 24px}.success-display{letter-spacing:.12em;font-size:clamp(1.02rem,4.8vw,1.32rem)}.save-date-heading{letter-spacing:.06em;font-size:clamp(.78rem,3.84vw,1.2rem)}.success-film{margin-top:24px}.video-only-page{padding:12px}.admin-header{flex-direction:column;align-items:start}.submission-table{display:block;overflow-x:auto}}@media (max-width:370px){.form-page{padding-inline:8px}.form-card{padding-inline:16px}.invitation-masthead{margin-inline:-16px}.masthead-details{letter-spacing:.07em;padding-inline:10px;font-size:.6rem}.wedding-mark{grid-template-columns:minmax(0,1fr) 138px minmax(0,1fr);min-height:122px;padding-inline:6px}.wedding-mark>span{letter-spacing:.09em;font-size:.74rem}.monogram{width:138px;height:138px}.form-heading h1{font-size:1.82rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
