:root{--ink:#111017;--paper:#f6f4eb;--lime:#d8fe58;--purple:#b7a0ff;--red:#ff746d;--muted:#72717b;--edge:#302e38;--font:'DM Sans',Arial,sans-serif;--display:'Space Grotesk','Trebuchet MS',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;font-family:var(--font);background:var(--ink);color:var(--paper);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}::selection{background:var(--lime);color:var(--ink)}:focus-visible{outline:3px solid var(--purple);outline-offset:3px}.no-scroll{overflow:hidden}.guest-site{overflow-x:hidden}.noise-layer{position:fixed;z-index:25;inset:0;pointer-events:none;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E")}
/* Common */
.brand{font:800 34px/.9 var(--display);letter-spacing:-3px;white-space:nowrap}.brand-star{color:var(--lime);margin:0 -2px 0 0}.brand small{vertical-align:middle;font:700 9px/1 var(--font);letter-spacing:2px;margin-left:11px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2.7px;color:var(--purple);text-transform:uppercase}.btn{border:0;display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:54px;padding:16px 21px;border-radius:4px;font:800 12px/1.1 var(--font);letter-spacing:1px;transition:transform .2s,box-shadow .2s,background .2s;white-space:normal;text-align:left}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0003}.btn-lime{background:var(--lime);color:var(--ink)}.btn-dark{color:var(--lime);background:var(--ink)}.btn-outline{border:1px solid #797881;color:var(--ink);background:transparent}.btn span{font-size:20px;font-weight:600}.section-pad{padding:112px max(5.4vw,22px)}.guest-header{height:84px;max-width:1800px;margin:auto;padding:0 5.4vw;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #ffffff1b;position:relative;z-index:5}.guest-header nav{display:flex;gap:40px}.guest-header nav a,.mini-cta{font-size:10px;font-weight:800;letter-spacing:1.8px}.guest-header nav a:hover{color:var(--lime)}.mini-cta{border:1px solid #dfd7ec7a;padding:15px 18px;border-radius:4px;white-space:nowrap}.mini-cta:hover{background:var(--lime);color:var(--ink)}
/* Hero */
.hero{min-height:680px;max-width:1800px;margin:auto;display:grid;grid-template-columns:1.04fr .96fr;align-items:stretch;position:relative;padding:40px 5.4vw 65px;isolation:isolate}.hero-copy{z-index:2;padding:90px 0 30px}.tagline{display:inline-flex;align-items:center;gap:12px;border:1px solid #46424f;border-radius:24px;padding:11px 16px;font-size:10px;font-weight:800;letter-spacing:1.65px;color:#e2dce8}.live-dot,.admin-dot{height:8px;width:8px;border-radius:50%;display:inline-block;background:var(--lime);box-shadow:0 0 0 5px #d8fe5819;flex:none}.hero-topline{font-weight:800;font-size:12px;letter-spacing:4px;margin:54px 0 5px;color:#cfc6df}.hero h1{margin:0;font:800 clamp(100px,13vw,220px)/.71 var(--display);letter-spacing:-.105em;color:var(--paper);position:relative}.hero h1>span{display:block}.hero h1 strong{display:block;margin:15px 0 0;color:var(--lime);font-weight:800;letter-spacing:-.1em}.bang{display:inline-block;transform:rotate(12deg);font-size:.6em;vertical-align:top;margin:20px 0 0 10px}.hero-quote{font:700 clamp(22px,2.6vw,36px)/1.18 var(--display);letter-spacing:-1.2px;max-width:570px;margin:39px 0 15px}.hero-description{font-size:14px;line-height:1.8;color:#bbb9c2;max-width:520px}.hero-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin:28px 0 42px}.quiet-link{font-size:11px;font-weight:800;letter-spacing:1px;border-bottom:1px solid #c8c6d0;padding:12px 0}.hero-meta{display:flex;gap:22px;flex-wrap:wrap;font-size:9px;font-weight:800;letter-spacing:1.4px;color:#aaa4b8}.hero-art{position:relative;min-height:600px;align-self:stretch;display:flex;align-items:center;justify-content:center;padding:35px 8px 65px}.hero-photo-wrap{width:min(79%,410px);height:585px;position:relative;overflow:hidden;transform:rotate(3deg);border:9px solid #f6f4eb;border-bottom-width:44px;box-shadow:16px 22px 0 #272230,30px 40px 70px #0007;background:#504238;z-index:1}.hero-photo{height:100%;width:100%;object-fit:cover;object-position:center 32%}.hero-image-shade{position:absolute;inset:0;background:linear-gradient(0deg,#120e17aa,transparent 36%)}.photo-annotation{position:absolute;bottom:14px;left:15px;color:#fff;font-size:10px;line-height:1.5;font-weight:800;letter-spacing:1.4px}.hero-sticker{z-index:3;position:absolute;text-align:center;box-shadow:0 10px 22px #0002}.sticker-top{background:var(--lime);color:var(--ink);border:3px solid var(--ink);border-radius:50%;width:124px;height:124px;display:flex;flex-direction:column;align-items:center;justify-content:center;right:1.5%;top:5%;font:800 12px/1.1 var(--font);transform:rotate(14deg)}.sticker-top strong{font:800 21px/1 var(--display)}.sticker-bottom{background:var(--purple);color:var(--ink);padding:18px 20px;font:700 15px/1.2 var(--display);left:2%;bottom:13%;transform:rotate(-10deg)}.hero-year{position:absolute;bottom:4%;right:6%;font:800 68px/1 var(--display);color:#ffffff0c;letter-spacing:-7px}.hero-spark{pointer-events:none;position:absolute;color:var(--lime);font-size:55px;z-index:-1}.spark-one{top:16%;left:48%;transform:rotate(-20deg)}.spark-two{bottom:13%;right:47%;color:var(--purple);font-size:42px}
.marquee{background:var(--lime);color:var(--ink);transform:rotate(-1deg) scale(1.01);height:55px;overflow:hidden;display:flex;align-items:center;font:800 14px/1 var(--display);letter-spacing:2px}.marquee-inner{white-space:nowrap;min-width:max-content;animation:slide-left 28s linear infinite}.marquee-inner span{margin:0 28px;font-size:23px;vertical-align:middle}@keyframes slide-left{to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Story */
.story{background:#f4efe6;color:var(--ink)}.section-lead{max-width:880px}.section-lead .eyebrow,.gallery .eyebrow{color:#6950b7}.section-lead h2,.section-heading h2,.details h2,.rsvp h2,.last-call h2{font:800 clamp(47px,6.2vw,94px)/.98 var(--display);letter-spacing:-5.5px;margin:24px 0 18px}.section-lead h2 em,.section-heading h2 em,.details h2 em,.rsvp h2 em,.last-call h2 em,.admin-page-title h1 em{font-style:normal;color:#8d72e7}.section-lead p{max-width:570px;font:500 16px/1.75 var(--font);color:#55515b}.story-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;margin-top:58px;align-items:start}.story-card{background:white;border:1px solid #e4ddcf;padding:10px 10px 25px;box-shadow:6px 7px 0 #ddd6c7;transition:transform .2s}.story-card:nth-child(1){transform:rotate(-2deg)}.story-card:nth-child(2){transform:rotate(2deg);margin-top:40px}.story-card:nth-child(3){transform:rotate(-1deg);margin-top:15px}.story-card:hover{transform:rotate(0deg) translateY(-4px)}.story-card img{width:100%;height:300px;object-fit:cover;object-position:center 32%;filter:saturate(.9)}.story-card div{padding:23px 12px 0}.story-card small{font-size:10px;font-weight:800;letter-spacing:2px;color:#8867ce}.story-card h3{font:800 clamp(21px,2.2vw,30px)/1.08 var(--display);letter-spacing:-1.3px;margin:10px 0 10px}.story-card p{color:#665e69;font-size:13px;line-height:1.6;margin:0}.story-footer{border-top:1px solid #d1c8b8;margin-top:85px;padding-top:23px;display:flex;justify-content:space-between;gap:20px;font-size:10px;font-weight:800;letter-spacing:1.6px}
/* Gallery */
.gallery{background:#cdc1ff;color:var(--ink)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:42px}.section-heading h2{margin-bottom:0}.section-heading h2 em{color:#5c479c}.section-heading p{font-size:15px;line-height:1.7;max-width:330px}.gallery-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.gallery-item{border:0;background:#14121a;padding:0;position:relative;overflow:hidden;aspect-ratio:3/4;min-width:0;cursor:zoom-in}.gallery-item.feature-photo{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}.gallery-item img{height:100%;width:100%;object-fit:cover;transition:transform .35s,filter .35s;filter:saturate(.88)}.gallery-item:hover img{transform:scale(1.055);filter:saturate(1.1)}.gallery-item:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(0deg,#0007,transparent);pointer-events:none}.photo-index,.photo-expand{position:absolute;bottom:15px;color:white;font-weight:800;font-size:10px;letter-spacing:1px;z-index:1}.photo-index{left:15px}.photo-expand{right:15px;background:var(--lime);border-radius:50%;color:var(--ink);display:grid;place-items:center;width:32px;height:32px;font-size:19px}.gallery-footer{text-align:center;font-size:11px;font-weight:800;letter-spacing:2px;margin:38px 0 0}
/* Details */
.details{background:#16131d}.details-top{max-width:940px}.details-top h2 em{color:var(--lime)}.details-top>p{color:#aaa5b2;line-height:1.7}.details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:55px 0 25px}.detail-box{border:1px solid #443d4c;background:#201c28;min-height:260px;padding:24px;display:flex;align-items:flex-start;flex-direction:column}.detail-icon{display:flex;width:100%;justify-content:space-between;color:var(--purple);font-size:12px;font-weight:800}.detail-icon span{font-size:32px}.detail-label{font-size:10px;color:#afa5c7;font-weight:800;letter-spacing:1.8px;margin-top:auto}.detail-box strong{font:800 clamp(27px,3vw,42px)/1.1 var(--display);letter-spacing:-1.5px;margin:14px 0 10px}.detail-box .venue-name{font-size:clamp(24px,2.4vw,35px)}.detail-box small{font-size:13px;color:#aba5b5;line-height:1.55}.detail-box a{font-size:11px;font-weight:800;color:var(--lime);margin-top:12px;letter-spacing:1px}.details-extra{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:33px 0;border-top:1px solid #433c4a;border-bottom:1px solid #433c4a}.details-extra>div{display:flex;flex-direction:column;gap:11px}.details-extra span{font-size:10px;font-weight:800;letter-spacing:2px;color:var(--lime)}.details-extra strong{font-weight:600;font-size:15px;line-height:1.7}.countdown{margin-top:55px;display:flex;align-items:center;justify-content:space-between;gap:20px}.countdown>span{font-weight:800;font-size:13px;letter-spacing:2px}.countdown-digits{display:flex;gap:28px}.countdown-digits>div{display:flex;flex-direction:column;align-items:center}.countdown-digits strong{font:800 clamp(32px,5vw,70px)/1 var(--display);color:var(--lime);letter-spacing:-3px}.countdown-digits small{font-size:10px;letter-spacing:2px;color:#aaa5b2;margin-top:8px}
/* RSVP */
.rsvp{background:#eeeaf9;color:var(--ink)}.rsvp-header{text-align:center;max-width:900px;margin:auto}.rsvp h2{margin:15px 0}.rsvp-header>p{font-size:16px;line-height:1.7;color:#5f596c}.rsvp-card{max-width:690px;margin:50px auto 20px;background:white;box-shadow:14px 16px 0 #d5cee8;border:1px solid #d9cfe9;padding:0 38px 40px;position:relative}.rsvp-card-top{display:flex;align-items:center;justify-content:space-between;padding:29px 0;border-bottom:2px dashed #dcd5e3;gap:20px;position:relative}.rsvp-card-top>span:last-child{text-align:right;font-size:9px;line-height:1.5;font-weight:800;letter-spacing:1.6px}.invitation-tag{font:800 14px/1 var(--display);letter-spacing:-.5px}.rsvp-ticket-hole{position:absolute;bottom:-12px;left:-54px;background:#eeeaf9;border-radius:50%;height:24px;width:24px;box-shadow:calc(100vw - 20px) 0 0 transparent}.rsvp-form{margin-top:32px}.form-label, .stack-form>label,.settings-form label,.mini-edit-form label{display:flex;flex-direction:column;gap:10px;font-size:11px;font-weight:800;letter-spacing:1.2px}.form-label span,.answer-fieldset legend span{color:#b33946}.form-label small{color:#797181;font-size:10px;letter-spacing:0}.form-label input,.form-label select,.form-label textarea,.stack-form input,.stack-form textarea,.settings-form input,.settings-form textarea,.mini-edit-form input{width:100%;border:1px solid #d9d5df;border-radius:3px;background:#fff;color:#1a171f;min-height:52px;padding:14px 15px;font:500 14px/1.4 var(--font);letter-spacing:0;transition:border-color .2s}.form-label input:focus,.form-label select:focus,.form-label textarea:focus,.stack-form input:focus,.settings-form input:focus,.settings-form textarea:focus{border-color:#8569ca;outline:2px solid #a48bff2c}.rsvp-form>.form-label{margin-bottom:22px}.answer-fieldset{border:0;padding:0;margin:15px 0 25px}.answer-fieldset legend{font:800 11px/1.5 var(--font);letter-spacing:1.3px;margin-bottom:14px}.answer-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.answer-option{display:block;cursor:pointer}.answer-option>input{position:absolute;opacity:0;width:1px;height:1px}.answer-option>span{display:flex;flex-direction:column;min-height:102px;justify-content:center;border:2px solid #dcd9e2;background:#faf9fc;border-radius:4px;padding:14px;gap:7px;transition:background .2s,border-color .2s}.answer-option b{font-size:12px;letter-spacing:.3px}.answer-option small{font-size:12px;color:#746c7b}.answer-option input:checked+span{border-color:#6c48b3;background:#e8ddff}.answer-option input:focus-visible+span{outline:3px solid #af91f4;outline-offset:3px}.companions-fields{display:grid;grid-template-columns:1fr;gap:18px;margin-bottom:22px}.companions-fields.faded{opacity:.4}.full-btn{width:100%}.rsvp-privacy{font-size:11px;line-height:1.6;text-align:center;color:#827b8b;max-width:440px;margin:19px auto 0}.rsvp-footnote{text-align:center;font-size:10px;letter-spacing:1.5px;font-weight:800;margin-top:40px}.invite-greeting{padding-top:22px;font-size:20px;font-family:var(--display)}.invite-greeting p{font-family:var(--font);font-size:12px;color:#79717c}.status-label{font-weight:800;color:#6953bd}.status-label.status-confirmed{color:#3e8a18}.status-label.status-declined{color:#bd4545}.honeypot{position:absolute;left:-9999px;opacity:0;pointer-events:none}
.notice{padding:14px 16px;margin:18px 0;border-radius:4px;font-size:13px;line-height:1.6;font-weight:700}.notice.success{background:#e4f8c7;border:1px solid #a6df6e;color:#27672b}.notice.error{background:#ffdddd;border:1px solid #ffc3c3;color:#8d2525}.notice.neutral{background:#eee8ff;border:1px solid #d8c9ff;color:#4d397f}
.last-call{background:var(--lime);color:var(--ink);padding:95px 5.4vw;display:flex;align-items:center;justify-content:space-between;position:relative;overflow:hidden}.last-call>span{font:800 15px/1 var(--display);align-self:flex-start}.last-call>div:nth-child(2){z-index:1}.last-call p{font-size:11px;letter-spacing:2.4px;font-weight:800}.last-call h2{font-size:clamp(46px,5.7vw,82px);max-width:750px}.last-call h2 em{color:#7965ad}.last-call .big-star{font-size:min(38vw,420px);line-height:1;position:absolute;right:-20px;opacity:.15;transform:rotate(20deg)}.guest-footer{background:#111017;color:#88818f;min-height:140px;padding:35px 5.4vw;display:flex;align-items:center;justify-content:space-between;gap:25px}.guest-footer span:not(.brand-star){font-size:9px;font-weight:800;letter-spacing:1.7px}
/* Photo Lightbox */
.lightbox{position:fixed;inset:0;z-index:90;background:#08070bf5;display:none;align-items:center;justify-content:center;gap:20px;padding:55px 14px 25px}.lightbox.open{display:flex}.lightbox figure{margin:0;max-height:90vh;max-width:min(85vw,900px);display:flex;flex-direction:column;align-items:center;justify-content:center}.lightbox figure img{max-height:78vh;max-width:100%;object-fit:contain}.lightbox figcaption{margin-top:14px;font-size:12px;text-align:center;color:#e4dae9;letter-spacing:1px}.lightbox button{background:#ffffff19;color:white;border:1px solid #ffffff55;font-size:26px;min-width:46px;height:46px;border-radius:50%}.lightbox button:hover{background:var(--lime);color:var(--ink)}.lightbox-close{position:absolute;right:25px;top:21px}
/* Installer and login */
.setup-body{min-height:100vh;background:radial-gradient(circle at 85% 15%,#4c356b66,transparent 35%),#121019;padding:50px 18px;display:flex;align-items:center;justify-content:center}.setup-card{width:min(100%,680px);background:#f6f3eb;color:var(--ink);padding:45px;border-radius:10px;box-shadow:20px 20px 0 #b7a0ff29}.setup-card h1{font:800 clamp(35px,5vw,58px)/1.06 var(--display);letter-spacing:-3px;margin:20px 0}.setup-card h1 span{color:#8261b2}.setup-card p{color:#615c69;line-height:1.6}.stack-form{display:flex;flex-direction:column;gap:19px;margin-top:26px}.stack-form hr{border:0;border-top:1px solid #ddd5e5;width:100%;margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.setup-card .hint{font-size:12px;margin:20px 0 0}.setup-card .btn{width:100%}.login-card{max-width:475px}.login-card .brand{display:inline-block;color:var(--ink);margin-bottom:38px}.login-card .hint a{font-weight:700}
/* Admin */
.admin-body{background:#efedf2;color:#222029}.admin-shell{display:grid;grid-template-columns:255px minmax(0,1fr);min-height:100vh}.admin-sidebar{position:sticky;top:0;align-self:start;height:100vh;display:flex;flex-direction:column;background:#15131c;color:#eeeaf4;padding:31px 20px;z-index:20}.admin-sidebar .brand{padding:5px 13px 38px}.sidebar-overline{padding:0 13px 16px;color:#817b8c;font-size:9px;font-weight:800;letter-spacing:2.2px}.admin-nav{display:flex;flex-direction:column;gap:4px}.admin-nav a{border-radius:5px;display:flex;align-items:center;gap:13px;padding:16px 13px;color:#aaa4b9;font-size:12px;font-weight:800;transition:background .2s,color .2s}.admin-nav a>span{font-size:18px;width:21px;text-align:center}.admin-nav a b{margin-left:auto}.admin-nav a.active{background:var(--lime);color:var(--ink)}.admin-nav a:hover:not(.active){background:#2b2737;color:#fff}.sidebar-bottom{margin-top:auto;padding:20px 13px 5px;border-top:1px solid #403b4b}.sidebar-bottom span{display:block;color:#9993a6;font-size:11px;line-height:1.5}.sidebar-bottom a,.sidebar-bottom button{margin-top:18px;display:block;font-size:10px;letter-spacing:1px;font-weight:800;color:var(--lime)}.sidebar-bottom button{border:0;background:none;color:#898395;padding:0}.admin-main{min-width:0}.admin-topbar{height:76px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 3.7vw;border-bottom:1px solid #e5e2e9;color:#7c7784;font-size:10px;font-weight:800;letter-spacing:1.7px}.admin-topbar>div{display:flex;align-items:center;gap:12px}.admin-topbar .admin-dot{height:6px;width:6px;background:#92d52b}.admin-avatar{background:#1d1826;color:var(--lime);height:33px;width:33px;border-radius:50%;display:grid;place-items:center;font:800 15px/1 var(--display);margin-left:14px}.admin-menu-button{display:none;background:transparent;border:0;font-size:12px;font-weight:800}.admin-content{padding:43px 3.7vw 100px;max-width:1680px;margin:auto}.admin-page-title{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:37px}.admin-page-title .eyebrow{color:#856cbf}.admin-page-title h1{font:800 clamp(45px,5vw,73px)/1.05 var(--display);letter-spacing:-4px;margin:13px 0}.admin-page-title h1 em{color:#8a72dd}.admin-page-title p{color:#817b89;max-width:540px;font-size:13px;line-height:1.6;margin:8px 0 0}.admin-page-title .btn{white-space:nowrap}.stat-grid{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:14px}.stat-tile{background:white;border:1px solid #e2dfe6;padding:25px;position:relative;overflow:hidden;min-height:180px;display:flex;flex-direction:column;align-items:flex-start}.stat-tile>span{font-size:10px;font-weight:800;letter-spacing:1.3px;color:#726d7a}.stat-tile strong{font:800 clamp(48px,5vw,78px)/1 var(--display);letter-spacing:-4px;margin:auto 0 5px}.stat-tile small{color:#8e8794;font-size:11px}.stat-tile.main-stat{background:var(--lime);border-color:var(--lime)}.stat-tile.main-stat>span,.stat-tile.main-stat small{color:#3c402c}.stat-decoration{position:absolute;right:-35px;bottom:-55px;font-size:240px;opacity:.08;line-height:1}.dashboard-columns{display:grid;grid-template-columns:1.22fr 1fr;gap:15px;margin-top:16px}.admin-panel{background:white;border:1px solid #e4e0ea;padding:30px;margin-bottom:16px;min-width:0}.admin-panel .eyebrow{color:#8870bb}.admin-panel h2{font:800 25px/1.2 var(--display);letter-spacing:-1px;margin:12px 0 22px}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:20px}.panel-title h2{margin-bottom:21px}.panel-title>b{font:800 35px/1 var(--display);color:#8a71d7}.panel-title>a{font-size:10px;font-weight:800;letter-spacing:1px;color:#836aba}.progress-bar{height:15px;border-radius:12px;background:#efebf6;overflow:hidden}.progress-bar>span{display:block;background:#a8d740;height:100%;border-radius:12px;transition:width .3s}.legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:20px}.legend>span{font-size:11px;color:#706a78;display:flex;align-items:center;gap:7px}.legend>span b{color:#1a1820}.legend i{width:8px;height:8px;border-radius:50%;display:inline-block}.legend-lime{background:#a5d439}.legend-purple{background:#bea9ec}.legend-red{background:#ee8c83}.micro-stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #eae7ed;margin-top:29px;padding-top:22px;gap:17px}.micro-stats>div{display:flex;flex-direction:column;gap:7px}.micro-stats strong{font:800 31px/1 var(--display)}.micro-stats span{font-weight:800;font-size:9px;line-height:1.5;letter-spacing:1.2px;color:#8d8593}.quick-links{display:flex;flex-direction:column}.quick-links a{border-top:1px solid #e5e0eb;padding:17px 0;font-size:12px;font-weight:700;display:flex;justify-content:space-between}.quick-links a span{color:#8269bb}.quick-links a:hover{color:#8861bb}.recent-panel{margin-top:1px}.table-wrap{overflow-x:auto}.guest-table{border-collapse:collapse;width:100%;font-size:12px;min-width:550px;text-align:left}.guest-table th{color:#96909f;font-size:10px;letter-spacing:1.5px;font-weight:800;padding:16px 12px;border-bottom:1px solid #e6e1eb}.guest-table td{padding:19px 12px;border-bottom:1px solid #eeeaf1;vertical-align:top}.guest-table td strong{font-size:13px}.guest-table td small{display:block;margin-top:7px;font-size:10px;color:#9a929f;line-height:1.5;white-space:normal;max-width:260px;word-break:break-word}.guest-table tr:last-child td{border-bottom:0}.table-status{display:inline-block;border-radius:99px;padding:7px 10px;font-size:10px;font-weight:800;white-space:nowrap}.table-status.confirmed{color:#327524;background:#e7f6d8}.table-status.pending{color:#8b6a29;background:#fff4d8}.table-status.declined{color:#a04c4e;background:#ffe1e0}.table-empty{text-align:center;color:#99909e;padding:40px!important}.filter-panel{padding:21px;margin-bottom:15px}.filter-form{display:flex;gap:12px}.filter-form>*{min-width:0}.search-label{position:relative;flex:1}.search-label span{position:absolute;left:17px;top:7px;font-size:29px;color:#77717f}.filter-form input,.filter-form select{height:49px;border:1px solid #e5e1e8;padding:12px 16px;background:#fff;border-radius:4px;color:#3e3b46}.filter-form input{padding-left:47px;width:100%}.filter-form .btn{min-height:49px}.result-count{font-size:11px;color:#827b89;margin:14px 2px 0}.guests-list{padding:5px 15px}.guests-list .guest-table{min-width:800px}.invite-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:flex-start;max-width:345px}.small-action,.edit-details>summary{padding:9px 10px;border:1px solid #dcd7e3;color:#423750;border-radius:3px;background:#fff;font-size:10px;font-weight:800;cursor:pointer}.small-action:hover,.edit-details>summary:hover{background:#eee7ff}.edit-details{position:relative}.edit-details>summary{list-style:none}.edit-details>summary::-webkit-details-marker{display:none}.edit-panel{position:absolute;right:0;top:37px;z-index:10;width:295px;padding:17px;background:white;border:1px solid #d7cce9;box-shadow:0 10px 35px #20152e30}.mini-edit-form{display:flex;flex-direction:column;gap:10px}.mini-edit-form label{font-size:10px}.mini-edit-form input{min-height:38px;padding:8px}.mini-edit-form button,.status-actions button{background:#241c30;color:#fff;border:0;padding:10px;font-size:10px;font-weight:800}.status-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:11px 0}.status-actions button{background:#e9e4f0;color:#342a40;font-size:8px}.delete-link{border:0;background:none;color:#bd4f5d;font-size:10px;font-weight:800;padding:8px 0}.pagination{display:flex;gap:6px;margin-top:20px}.pagination a{padding:10px 14px;background:white;border:1px solid #e3dfe8;font-size:12px}.pagination .current{background:var(--lime);font-weight:800}.creator-columns{grid-template-columns:1fr 1fr;align-items:start}.admin-form{margin-top:12px}.admin-form label,.settings-form label{color:#4a4651;font-size:11px;letter-spacing:.5px}.admin-form input,.admin-form textarea,.settings-form input,.settings-form textarea{background:#fdfcff;resize:vertical}.admin-form .btn{width:100%}.hint{font-size:11px;line-height:1.65;color:#9b92a3}.guidance-panel{display:flex;gap:25px;background:#eee7ff;border-color:#d8c9fa}.guidance-panel>span{font-size:35px;color:#8b6dc8}.guidance-panel p{margin:0;font-size:13px;line-height:1.75;color:#574d66}.settings-form>.admin-panel{padding:35px;margin-bottom:17px}.settings-form h2{margin:12px 0 25px}.settings-form>section>label,.settings-form .form-grid{margin-bottom:19px}.settings-form textarea{min-height:95px}.settings-form .btn{margin-top:15px}.toggle-line{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:13px!important;padding:15px 0;border-top:1px solid #e9e4ee}.toggle-line input{width:22px;height:22px;min-height:0;accent-color:#816ab9;flex:none;margin:0}.toggle-line span{display:flex;flex-direction:column;gap:7px}.toggle-line small{font-weight:400;font-size:12px;line-height:1.6;color:#817a88}.security-panel{max-width:700px}.security-advice{background:#f0ebf7;padding:24px;margin-top:30px}.security-advice strong{font-size:13px}.security-advice p{font-size:12px;line-height:1.65;color:#77717c}
/* Adaptive */
@media(max-width:1250px){.hero{grid-template-columns:1fr .85fr}.hero h1{font-size:clamp(86px,12vw,160px)}.hero-photo-wrap{height:510px}.story-card img{height:230px}.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-grid{grid-template-columns:repeat(2,1fr)}.admin-shell{grid-template-columns:215px minmax(0,1fr)}.admin-sidebar{padding:24px 12px}}
@media(max-width:950px){.guest-header nav{display:none}.hero{grid-template-columns:1fr 1fr;padding-top:8px}.hero-copy{padding-top:75px}.hero h1{font-size:clamp(75px,12vw,110px)}.hero-photo-wrap{height:500px;width:78%}.hero-art{min-height:550px}.sticker-top{height:96px;width:96px;font-size:10px}.sticker-top strong{font-size:16px}.story-cards{gap:11px}.story-card img{height:190px}.story-card h3{font-size:20px}.details-grid{gap:8px}.detail-box{padding:17px}.details-extra{gap:20px}.dashboard-columns{grid-template-columns:1fr}.admin-topbar>span{display:none}}
@media(max-width:700px){.section-pad{padding:75px 23px}.guest-header{height:68px;padding:0 23px;gap:10px}.guest-header .brand{font-size:28px}.guest-header .brand small{font-size:8px;margin-left:6px}.mini-cta{font-size:9px;padding:12px 10px}.hero{display:flex;flex-direction:column;padding:28px 23px 20px;min-height:auto}.hero-copy{padding:24px 0 0;order:1}.hero-art{order:2;min-height:520px;padding:15px 0 38px;margin-top:20px}.hero-photo-wrap{height:460px;width:min(73%,310px);transform:rotate(3deg);border-width:7px;border-bottom-width:36px}.tagline{font-size:9px;padding:9px 11px}.hero-topline{font-size:10px;margin-top:37px;letter-spacing:2px}.hero h1{font-size:clamp(100px,23.6vw,160px);letter-spacing:-.11em}.hero h1 strong{margin-top:14px}.hero-quote{font-size:27px;letter-spacing:-1px;margin-top:30px}.hero-description{font-size:13px}.hero-actions{margin:26px 0 20px;gap:20px}.hero-meta{gap:13px;font-size:8px}.hero-sticker.sticker-top{right:0;top:0}.sticker-bottom{left:0;bottom:13%}.spark-one{left:78%;top:12%}.spark-two{bottom:15%;right:85%}.marquee{height:42px;font-size:11px}.section-lead h2,.section-heading h2,.details h2,.rsvp h2,.last-call h2{font-size:clamp(43px,11vw,72px);letter-spacing:-3px}.section-lead p,.rsvp-header>p{font-size:14px}.story-cards{grid-template-columns:1fr;gap:17px;margin-top:38px}.story-card{max-width:360px;margin:0 auto!important;transform:none!important;width:100%}.story-card img{height:300px}.story-footer{margin-top:50px;flex-direction:column;font-size:9px}.section-heading{display:block}.section-heading p{font-size:13px}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:6px}.gallery-item.feature-photo{grid-column:span 2;grid-row:span 2}.photo-index{bottom:8px;left:8px;font-size:8px}.photo-expand{bottom:7px;right:7px;width:24px;height:24px;font-size:14px}.gallery-footer{font-size:9px;line-height:1.7}.details-grid{grid-template-columns:1fr;gap:11px;margin-top:35px}.detail-box{min-height:180px}.detail-box strong{font-size:36px}.details-extra{grid-template-columns:1fr}.countdown{display:block}.countdown-digits{justify-content:space-between;margin-top:23px;gap:10px}.countdown-digits strong{font-size:37px}.rsvp-card{padding:0 20px 30px;box-shadow:7px 9px 0 #d5cee8}.rsvp h2{font-size:clamp(42px,10vw,68px)}.rsvp-card-top>span:last-child{font-size:8px}.answer-options{grid-template-columns:1fr}.answer-option>span{min-height:84px}.last-call{padding:60px 23px}.last-call>span{display:none}.last-call .big-star{right:-70px;bottom:-35px;font-size:200px}.guest-footer{padding:30px 23px;flex-direction:column;align-items:flex-start;gap:16px}.lightbox{gap:5px;padding:60px 5px 15px}.lightbox figure{max-width:calc(100vw - 105px)}.lightbox button{min-width:40px;height:40px;font-size:18px}.setup-card{padding:25px}.setup-card h1{letter-spacing:-2px}.form-grid{grid-template-columns:1fr}.admin-shell{display:block}.admin-sidebar{position:fixed;left:0;top:0;width:255px;max-width:85vw;transform:translateX(-110%);transition:transform .2s;box-shadow:8px 0 30px #0003}.admin-sidebar.sidebar-open{transform:translateX(0)}.admin-menu-button{display:block}.admin-topbar{height:65px;padding:0 18px}.admin-topbar>div{font-size:9px;letter-spacing:.5px}.admin-avatar{margin-left:0}.admin-content{padding:33px 17px 75px}.admin-page-title{display:block;margin-bottom:28px}.admin-page-title h1{letter-spacing:-2.8px;font-size:47px}.admin-page-title .btn{margin-top:20px}.stat-grid{gap:9px}.stat-tile{padding:16px;min-height:140px}.stat-tile strong{font-size:56px;letter-spacing:-3px}.stat-tile>span{font-size:8px;line-height:1.4}.stat-tile small{font-size:10px;line-height:1.3}.admin-panel{padding:22px}.dashboard-columns{gap:0}.filter-form{flex-direction:column}.filter-form select{width:100%}.guests-list{padding:3px 9px}.creator-columns{grid-template-columns:1fr}.guidance-panel{display:block}.guidance-panel>span{display:block;margin-bottom:10px}.settings-form>.admin-panel{padding:22px}.micro-stats{gap:10px}}
