:root{--cream:#f7f3ec;--paper:#fffcf5;--green:#284539;--green-dark:#213a31;--sage:#78917b;--muted:#6d756c;--blush:#ead5c9;--peach:#c78969;--line:#dfded2;--serif:'Iowan Old Style','Baskerville','Palatino Linotype','Book Antiqua',Georgia,serif;--sans:'Avenir Next',Avenir,Montserrat,'Helvetica Neue',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #bf9160;outline-offset:3px}::selection{background:#e9d4bf;color:#264135}.wedding-body{background:var(--cream);color:var(--green);font-family:var(--sans);font-size:15px;line-height:1.65;overflow-x:hidden}.grain{position:fixed;inset:0;pointer-events:none;z-index:50;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.93' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.25'/%3E%3C/svg%3E")}.site-header{height:85px;border-bottom:1px solid rgba(40,69,57,.14);background:#f7f3eceb;position:relative;z-index:10}.header-inner{max-width:1336px;padding:0 58px;margin:auto;height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.header-logo{font-family:var(--serif);font-size:30px;font-weight:600;letter-spacing:-4px;text-decoration:none;white-space:nowrap}.header-logo span:first-child{font-style:italic;font-weight:400;font-size:21px;margin:0 6px;letter-spacing:0}.header-star{font-family:var(--sans);font-size:12px;color:var(--peach);vertical-align:top;margin-left:8px;letter-spacing:0}.header-date{font-size:10px;font-weight:700;letter-spacing:3px;white-space:nowrap}.header-date i{color:var(--peach);padding:0 9px}.header-link{font-size:12px;font-weight:700;border-bottom:1px solid currentColor;text-decoration:none;white-space:nowrap;transition:color .2s}.header-link:hover{color:var(--peach)}.header-link span{font-size:14px;margin-left:4px}.hero{max-width:1440px;margin:0 auto;min-height:755px;display:grid;grid-template-columns:1.05fr .95fr;align-items:stretch}.hero-copy{padding:126px 30px 68px max(8%,calc((100vw - 1220px)/2));position:relative;min-height:730px;display:flex;flex-direction:column;align-items:flex-start}.hero-small{display:flex;gap:16px;align-items:center;font-size:10px;letter-spacing:3.7px;font-weight:700;color:#8a7b6c}.hero-small-line{width:35px;height:1px;background:#bba893}.hero h1{font-family:var(--serif);font-size:clamp(91px,9.3vw,154px);font-weight:400;line-height:.85;letter-spacing:-7px;margin:37px 0 18px}.hero h1 em{font-weight:400;color:#8c9c87}.hero-fullstop{color:var(--peach)}.hero-signature{font-family:var(--serif);font-size:30px;line-height:1.25;margin:11px 0 30px;font-style:italic;letter-spacing:-.7px}.hero-signature span{color:var(--peach);font-size:24px;padding:0 5px}.hero-copy>p{max-width:410px;line-height:1.95;font-size:14px;color:#5c6960;margin:0 0 33px}.hero-cta-row{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:2px;gap:20px;border:1px solid transparent;font-weight:700;font-size:12px;letter-spacing:.45px;padding:15px 22px;min-height:50px;transition:transform .2s,background .2s,border-color .2s;color:var(--green);font-family:var(--sans)}.btn:hover:not(:disabled){transform:translateY(-2px)}.btn-primary{background:var(--green);color:#fffdfa;border-color:var(--green)}.btn-primary:hover:not(:disabled){background:#345748}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-outline{background:transparent;color:var(--green);border-color:#a9b6ab}.btn-outline:hover{background:#e6ebe1}.btn-small{min-height:38px;padding:10px 14px;font-size:11px}.hero-cta-note{color:#9b8879;font-family:var(--serif);font-style:italic;font-size:15px}.hero-bottom-meta{display:flex;align-items:center;gap:22px;margin-top:auto;padding-top:56px;font-size:10px;letter-spacing:2.4px;font-weight:700}.meta-dot{font-size:17px;color:var(--peach)}.hero-art{min-height:755px;background:#e6e8dd;position:relative;display:flex;align-items:center;justify-content:center;padding:62px 70px;overflow:hidden}.hero-art:before{position:absolute;content:'';width:530px;height:530px;background:#d5dccd;border-radius:50%;top:-250px;right:-185px;opacity:.75}.hero-art:after{position:absolute;content:'';width:380px;height:380px;background:#d8d8c7;border-radius:50%;left:-170px;bottom:-210px;opacity:.8}.hero-art-border{height:min(625px,100%);width:min(480px,100%);position:relative;z-index:1;border:1px solid rgba(52,82,64,.42);border-radius:240px 240px 4px 4px;text-align:center;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:70px 24px 45px;background:rgba(247,247,238,.13)}.hero-art-border:before{content:'';position:absolute;inset:14px;border:1px solid rgba(52,82,64,.19);border-radius:230px 230px 2px 2px;pointer-events:none}.art-text-top{font-size:8px;letter-spacing:3px;font-weight:700;color:#697e6e;position:absolute;top:82px}.art-monogram{font-family:var(--serif);font-size:clamp(74px,7.2vw,112px);font-weight:400;white-space:nowrap;letter-spacing:-9px;line-height:1}.art-monogram span{font-family:var(--serif);font-style:italic;color:#a67d6a;font-size:.51em;letter-spacing:0;vertical-align:19px;margin:0 7px}.art-line{width:98px;height:1px;background:#9bb09d;margin:35px 0 23px}.art-wedding-date{font-family:var(--serif);font-size:32px;font-style:italic;z-index:2}.art-wedding-date em{font-size:27px;font-style:normal}.art-text-bottom{position:absolute;bottom:37px;font-family:var(--serif);font-size:16px;font-style:italic;color:#627866}.art-floral{position:absolute;width:237px;height:auto;z-index:2;opacity:.92;pointer-events:none}.art-floral-a{left:-92px;bottom:-30px;transform:rotate(-24deg)}.art-floral-b{right:-108px;top:-66px;transform:rotate(164deg) scale(.8)}.art-tape{z-index:3;position:absolute;width:119px;height:33px;background:#e6cbb9;opacity:.75;transform:rotate(-34deg);box-shadow:1px 1px 2px #79918025}.art-tape-top{left:45px;top:85px}.art-tape-bottom{bottom:95px;right:12px;transform:rotate(33deg)}.art-stamp{z-index:4;position:absolute;right:45px;bottom:100px;background:#b9795b;width:105px;height:105px;transform:rotate(11deg);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#fffaf1;box-shadow:0 10px 25px #516b5029;border:1px solid #e9caba}.art-stamp span{font-family:var(--serif);font-size:35px;line-height:1;font-style:italic}.art-stamp small{line-height:1.2;text-align:center;font-size:10px;letter-spacing:1px}.ticker{height:62px;background:#2b4a3e;color:#f6f2e9;overflow:hidden;display:flex;align-items:center}.ticker-inner{min-width:1300px;width:100%;display:flex;align-items:center;justify-content:space-around;gap:25px;font-size:10px;letter-spacing:3px;font-weight:700;white-space:nowrap}.ticker-inner b{color:#d5bd95;font-size:17px;font-weight:400}.speeches-section{max-width:1336px;padding:125px 58px 132px;margin:0 auto;scroll-margin-top:30px}.section-intro{display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:end;margin-bottom:63px}.eyebrow{font-size:10px;letter-spacing:3px;color:#9b806f;font-weight:800;text-transform:uppercase}.tiny-burst{font-size:15px;color:#ba8060;margin-right:13px}.section-intro h2,.venue-grid h2,.closing-section h2{font-family:var(--serif);font-weight:400;letter-spacing:-3px;line-height:1.03;font-size:clamp(54px,5.5vw,86px);margin:24px 0 0}.section-intro h2 em,.venue-grid h2 em,.closing-section h2 em{font-weight:400;color:#a1aa94}.intro-right{max-width:400px;color:#596a5f;padding:0 10px 5px 0;line-height:1.9;font-size:15px}.intro-right>p{margin:0}.mini-rule{width:50px;height:1px;background:#baa18c;margin:23px 0 17px}.intro-aside{font-size:13px!important;color:#8c8177}.intro-aside strong{color:var(--green)}.speech-content{display:grid;grid-template-columns:345px 1fr;gap:20px;align-items:stretch}.speech-sidecard{background:#eadacf;min-height:472px;padding:37px 32px 25px;position:relative;overflow:hidden}.speech-sidecard:after{position:absolute;content:'✳';font-size:220px;line-height:1;bottom:-116px;right:-50px;color:#f3e7df;opacity:.85}.small-kicker,.slots-subhead{font-size:10px;font-weight:800;letter-spacing:2.4px;color:#9d6c58}.step{display:grid;grid-template-columns:38px 1fr;gap:14px;border-top:1px solid #c6a99c7c;padding-top:20px;margin-top:21px;position:relative;z-index:1}.step-num{font-family:var(--serif);font-size:21px;color:#b4795c;line-height:1.1;font-style:italic}.step strong{font-family:var(--serif);font-size:21px;font-weight:500;letter-spacing:-.4px;line-height:1.1}.step p{margin:6px 0 0;color:#756962;font-size:12px;line-height:1.5}.side-heart{font-family:Georgia,serif;font-size:38px;line-height:1;margin-top:23px;color:#a16b57;position:relative;z-index:1}.side-note{font-family:var(--serif);font-style:italic;font-size:18px;color:#806d65;margin:7px 0 0;position:relative;z-index:1}.slots-panel{background:#fffdf7;border:1px solid #e4e1d6;padding:38px 38px 26px;box-shadow:0 12px 38px #3a523b0b;min-height:470px}.slots-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:25px}.slots-subhead{color:#8e9c8a}.slots-head h3{font-family:var(--serif);font-size:31px;letter-spacing:-1px;font-weight:500;margin:8px 0 0;line-height:1}.availability-legend{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;color:#798c7c;white-space:nowrap;padding-top:8px}.legend-dot{width:8px;height:8px;border-radius:50%;background:#92aa95}.slots-list{margin-top:4px}.speech-slot{padding:20px 0;display:grid;grid-template-columns:115px 1fr auto;align-items:center;gap:18px;border-bottom:1px solid #e7e6dd;animation:fade-in .2s ease-out}.speech-slot-time strong{font-family:var(--serif);font-size:29px;line-height:1;letter-spacing:-1px;display:block;font-weight:500}.speech-slot-time span{display:block;font-size:10px;color:#8b958c;margin-top:7px;font-weight:600}.speech-slot-text strong{display:block;font-family:var(--serif);font-size:20px;font-weight:500;line-height:1.3}.speech-slot-text>span{display:block;font-size:11px;color:#85887b;margin-top:2px}.slot-button{border:1px solid #becabd;color:var(--green);background:#f8faf6;white-space:nowrap;font-weight:700;font-size:10px;padding:12px 13px;transition:.2s}.slot-button:hover{background:var(--green);color:#fff}.reserved-label{font-weight:800;font-size:10px;letter-spacing:.4px;color:#af7866;background:#f4e7df;padding:9px 12px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.reserved-icon{font-size:7px}.closed-label{color:#9f9483;background:#f6f2e9;font-size:10px;padding:9px 12px;font-weight:700}.is-reserved .speech-slot-time,.is-reserved .speech-slot-text{opacity:.62}.slots-footnote{display:flex;align-items:flex-start;gap:13px;margin-top:27px;color:#96958b;font-size:11px;line-height:1.6}.slots-footnote>span:first-child{font-size:18px;color:#c58d70;line-height:1}.slot-empty{text-align:center;padding:50px 15px 45px}.slot-empty strong{font-family:var(--serif);font-size:26px;font-weight:500}.slot-empty p{font-size:13px;max-width:350px;line-height:1.8;margin:10px auto;color:#8b8a7c}.empty-doodle{font-size:44px;color:#c9ad95;margin-bottom:9px}.slot-error{padding:40px 10px;color:#a26d62;text-align:center}.slot-skeleton{padding:27px 0;border-bottom:1px solid var(--line)}.skeleton-line{height:13px;max-width:85%;border-radius:10px;background:#e8e9e1;animation:pulse 1.5s infinite}.skeleton-line.short{max-width:40%;margin-top:12px;height:8px}@keyframes pulse{50%{opacity:.45}}@keyframes fade-in{from{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.venue-section{background:#304d40;color:#f6f4ec;padding:77px max(58px,calc((100vw - 1220px)/2));position:relative;overflow:hidden}.venue-section:after{content:'✳';position:absolute;right:-25px;top:-160px;font-size:390px;color:#436354;opacity:.45}.venue-ornament{position:absolute;top:12px;left:50%;font-size:31px;color:#e0c9a9}.venue-grid{display:grid;grid-template-columns:1.4fr .7fr;align-items:end;gap:70px;position:relative;z-index:1}.venue-grid .eyebrow{color:#d3b79c}.venue-grid h2{font-size:clamp(48px,5vw,72px);margin-top:20px}.venue-grid h2 em{color:#a4b89f}.venue-details{border-left:1px solid #779080;padding-left:45px;padding-bottom:4px;max-width:350px}.venue-label{color:#c9bda8;font-size:10px;letter-spacing:2.3px;font-weight:800}.venue-details strong{display:block;font-family:var(--serif);font-size:29px;font-weight:500;margin:12px 0 6px}.venue-details p{color:#bccfc1;font-size:13px;line-height:1.9;margin:0 0 16px}.venue-details a{font-size:12px;text-underline-offset:6px;color:#f8f0df}.venue-bottom{border-top:1px solid #648072;margin-top:68px;padding-top:23px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2.6px;font-weight:700;color:#bed0c0}.closing-section{text-align:center;padding:120px 24px 122px;max-width:900px;margin:auto}.closing-sparkle{font-size:28px;color:#c48e70;margin-bottom:20px}.closing-section h2{font-size:clamp(53px,6.6vw,90px);margin-top:17px}.closing-section>p{max-width:395px;margin:27px auto 0;font-size:14px;line-height:1.9;color:#728073}.closing-script{font-family:var(--serif);font-size:31px;font-style:italic;margin-top:36px}.closing-script span{color:#c08367}.closing-heart{font-size:36px;margin-left:8px}.footer{min-height:110px;background:#eee9df;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px max(58px,calc((100vw - 1220px)/2));color:#627569}.footer>div{font-family:var(--serif);font-size:22px}.footer>div span{color:#ba8060;font-style:italic}.footer p{font-family:var(--serif);font-size:15px;font-style:italic;margin:0;text-align:center}.footer small{font-size:10px;letter-spacing:1px}
/* Reservation modals */
.reservation-dialog,.success-dialog{border:none;padding:0;max-height:min(90vh,900px);width:min(530px,calc(100vw - 24px));color:var(--green);background:var(--paper);box-shadow:0 40px 100px #1629204f;overflow:auto}.reservation-dialog::backdrop,.success-dialog::backdrop{background:rgba(22,38,29,.72);backdrop-filter:blur(5px)}.dialog-inner{padding:42px 49px 33px;position:relative}.dialog-close{border:0;background:none;position:absolute;top:18px;right:20px;font-size:35px;line-height:1;color:#708071;padding:2px 10px}.dialog-inner h2,.success-inner h2{font-family:var(--serif);font-weight:400;font-size:50px;line-height:1.1;letter-spacing:-2px;margin:14px 0 22px}.dialog-inner h2 em,.success-inner h2 em{color:#97a98f}.chosen-slot{background:#edf2e9;padding:15px 18px;margin:0 0 22px;display:flex;flex-direction:column}.chosen-slot>span{font-size:9px;letter-spacing:2px;font-weight:800;color:#849687}.chosen-slot strong{font-family:var(--serif);font-size:30px;line-height:1.2;font-weight:500;margin:5px 0}.chosen-slot small{font-size:11px;color:#7e8d7f}.dialog-inner form{display:grid;gap:14px}.dialog-inner form label,.setup-form label,.inline-slot-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700;color:#445f4f}.dialog-inner form label span{color:#b7765e}.dialog-inner form label small,.setup-form label small{font-size:10px;color:#8e9185;font-weight:400}.dialog-inner input:not([type=hidden]),.dialog-inner textarea,.setup-form input,.setup-form textarea,.inline-slot-form input,.inline-slot-form select{background:#fffefd;border:1px solid #d8dfd2;border-radius:1px;padding:11px 13px;min-height:42px;width:100%;font-size:13px;color:var(--green)}.dialog-inner textarea,.setup-form textarea{resize:vertical;line-height:1.6}.dialog-inner input::placeholder,.dialog-inner textarea::placeholder{color:#a2aa9d}.dialog-submit{width:100%;margin-top:8px}.privacy-note{font-size:10px;color:#879185;text-align:center;line-height:1.7;margin:0}.form-error{background:#fff0e9;border:1px solid #e6b8a9;color:#995546;padding:10px 12px;font-size:12px}.form-error[hidden]{display:none}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.success-inner{text-align:center;padding:60px 45px 54px;position:relative}.success-heart{font-family:Georgia,serif;font-size:85px;line-height:1;color:#bc826a;margin-bottom:12px}.success-inner h2{font-size:65px}.success-inner p{line-height:1.9;color:#5d6d61}.success-inner .btn{margin-top:22px}.mini-text{font-size:11px!important;color:#8e978c;line-height:1.75!important}
/* Admin and installation */
.admin-body{margin:0;background:#f3f1eb;color:var(--green);font-family:var(--sans);font-size:14px;line-height:1.65}.admin-body h1,.admin-body h2,.admin-body h3{margin-top:0}.admin-body h1,.admin-body h2{font-family:var(--serif);font-weight:400}.login-layout,.setup-layout{min-height:100vh;max-width:670px;padding:70px 26px;margin:0 auto}.login-layout{max-width:530px}.back-link{color:#829084;text-decoration:none;font-size:12px}.login-mark{font-family:var(--serif);font-size:76px;text-align:center;letter-spacing:-7px;margin:50px 0 24px}.login-mark em,.admin-brand em{color:#ba8062;font-weight:400}.admin-panel{background:#fffcf7;border:1px solid #e3e2d7;padding:30px 30px;box-shadow:0 12px 30px #40563c0a}.login-panel{padding:43px 42px}.admin-panel p{color:#68796b}.section-title{font-size:clamp(38px,4vw,55px);line-height:1.12;letter-spacing:-1.8px;margin:14px 0 17px}.section-title em{color:#a0ad96;font-weight:400}.setup-form{display:grid;gap:18px;margin-top:22px}.setup-form label{font-size:12px}.setup-form input,.setup-form textarea{margin-top:4px}.setup-form button{justify-self:start}.setup-layout{max-width:800px}.setup-layout>.admin-brand{display:block;text-align:center;margin-bottom:30px}.admin-brand{font-family:var(--serif);font-weight:700;font-size:28px;letter-spacing:-2px;text-decoration:none;white-space:nowrap}.admin-brand span{font-family:var(--sans);font-style:normal;font-size:10px;letter-spacing:2px;color:#7d9081;font-weight:700;margin-left:15px}.setup-panel{padding:44px}.form-separator{margin-top:11px;border-top:1px solid #e1e5dd;padding-top:18px;color:#9f846d;letter-spacing:2px;text-transform:uppercase;font-size:10px;font-weight:800}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.setup-footnote{text-align:center;font-size:11px;color:#859287;margin:20px}.alert{border:1px solid #d6e1d3;background:#e9f1e5;color:#3b6048;padding:13px 16px;font-size:13px;margin:17px 0 24px}.alert-error{background:#f7eae5;border-color:#e7c7bb;color:#935743}.admin-topbar{background:#fffcf7;border-bottom:1px solid #e4e5dd;padding:17px 0;position:relative;z-index:2}.admin-top-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1200px;padding:0 28px;margin:auto}.admin-actions{display:flex;align-items:center;gap:22px}.admin-website-link{font-size:12px;font-weight:700}.quiet-button{border:0;background:transparent;color:#8b9084;font-size:12px;padding:8px 0}.admin-main{max-width:1200px;padding:57px 28px 72px;margin:auto}.admin-intro{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:29px}.admin-intro .section-title{font-size:60px;line-height:1.03;margin-bottom:0}.opening-control{display:flex;align-items:flex-end;gap:13px;flex-direction:column;padding-bottom:6px}.pill{font-size:11px;font-weight:700;white-space:nowrap;padding:5px 11px;border-radius:22px}.pill-live{background:#daeadd;color:#38684a}.pill-off{background:#e8e5df;color:#77796f}.dashboard-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:55px}.stat-tile{background:#fffcf7;border:1px solid #e5e5dc;padding:23px 22px;display:flex;flex-direction:column}.stat-tile strong{font-family:var(--serif);font-size:43px;font-weight:400;line-height:1}.stat-tile span{font-size:11px;color:#838b7c;margin-top:10px}.stat-warning strong{color:#b77559}.admin-section{margin-bottom:56px}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:22px}.section-head h2{font-size:39px;line-height:1.1;margin:9px 0 0}.admin-slots{border-top:1px solid #dcded3}.admin-slot{display:grid;grid-template-columns:135px 1fr auto;gap:22px;align-items:center;padding:21px 6px;border-bottom:1px solid #dcded3}.admin-slot-time{font-family:var(--serif);font-size:27px;letter-spacing:-1px;white-space:nowrap}.admin-slot-time small{display:block;font-family:var(--sans);font-size:11px;color:#9aa091;letter-spacing:0;margin-top:-3px}.admin-slot-detail>div:first-child{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-slot-detail strong{font-family:var(--serif);font-size:19px;font-weight:500}.small-tag{font-size:10px;white-space:nowrap;padding:3px 8px;font-weight:800}.tag-booked{background:#f2e2da;color:#b67861}.tag-free{background:#e0ebdc;color:#548364}.tag-disabled{background:#ebe9e3;color:#96998d}.booking-private{font-size:12px;line-height:1.7;color:#738071;margin-top:7px;max-width:580px;overflow-wrap:anywhere}.booking-private strong{font-family:var(--sans);font-size:12px;font-weight:800}.admin-slot-buttons{display:flex;gap:9px;flex-wrap:wrap}.admin-slot-buttons button{background:transparent;color:#5d7965;border:0;text-decoration:underline;text-underline-offset:4px;font-size:11px;font-weight:700;padding:4px}.admin-slot-buttons .text-danger{color:#ae7767}.admin-empty{padding:30px;color:#7c887e}.add-slot{margin-top:22px;padding:28px}.add-slot h3,.admin-panel h3{font-family:var(--serif);font-size:24px;font-weight:500;letter-spacing:-.6px;margin:0 0 17px}.inline-slot-form{display:grid;grid-template-columns:1fr 1fr 2fr auto;gap:15px;align-items:end}.inline-slot-form button{min-height:43px}.inline-slot-form input,.inline-slot-form select{margin-top:5px}.add-slot .mini-text{margin-bottom:0}.admin-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.admin-bottom-grid .admin-section{min-width:0}.admin-note{font-size:12px;line-height:1.7;overflow-wrap:anywhere}.mail-buttons{display:flex;gap:8px;flex-wrap:wrap}.admin-panel hr{border:0;border-top:1px solid #e2e5dc;margin:25px 0}.admin-end{display:flex;justify-content:space-between;gap:20px;color:#92a08e;border-top:1px solid #d6dfd4;padding-top:20px;font-size:11px}.admin-end a{color:#6b896e}
@media(max-width:1100px){.header-inner{padding:0 34px}.hero-copy{padding-left:8%}.hero-art{padding:60px 48px}.hero-art-border{width:100%}.art-stamp{right:12px}.speeches-section{padding-left:34px;padding-right:34px}.speech-content{grid-template-columns:300px 1fr}.slots-panel{padding:29px 25px}.speech-slot{grid-template-columns:90px 1fr;gap:10px}.speech-slot-action{grid-column:2}.speech-slot-action button{margin-top:6px}.venue-section,.footer{padding-left:38px;padding-right:38px}.inline-slot-form{grid-template-columns:1fr 1fr}.admin-slot{grid-template-columns:95px 1fr auto}}
@media(max-width:760px){.site-header{height:68px}.header-inner{padding:0 23px}.header-logo{font-size:26px}.header-date{font-size:9px;letter-spacing:1.4px}.header-link{font-size:10px}.hero{display:flex;flex-direction:column}.hero-copy{min-height:unset;padding:65px 23px 37px;align-items:flex-start}.hero-small{font-size:9px;gap:9px;letter-spacing:2.6px}.hero-small-line{width:26px}.hero h1{font-size:clamp(83px,15vw,128px);margin:30px 0 10px;letter-spacing:-4px}.hero-signature{font-size:29px;margin:12px 0 23px}.hero-copy>p{max-width:480px}.hero-bottom-meta{margin-top:39px;padding-top:0}.hero-art{min-height:500px;height:500px;padding:45px 78px}.hero-art-border{width:min(420px,100%);height:450px}.art-text-top{top:54px}.art-monogram{font-size:86px}.art-floral{width:185px}.art-stamp{width:88px;height:88px;bottom:40px;right:35px}.art-stamp span{font-size:28px}.art-tape-top{top:55px}.art-tape-bottom{bottom:60px}.ticker{height:50px}.speeches-section{padding:82px 23px 87px}.section-intro{grid-template-columns:1fr;gap:21px;margin-bottom:35px}.section-intro h2{font-size:clamp(54px,11vw,76px);margin-top:16px}.intro-right{font-size:14px}.speech-content{grid-template-columns:1fr;gap:18px}.speech-sidecard{min-height:unset;padding:28px 27px 25px}.speech-sidecard:after{font-size:155px;right:-40px;bottom:-80px}.step{margin-top:12px;padding-top:13px}.step p{margin-top:2px}.side-heart{margin-top:8px}.side-note{font-size:16px}.slots-panel{padding:26px 23px 23px}.slots-head{align-items:flex-start}.slots-head h3{font-size:27px}.availability-legend{font-size:10px;text-align:right;white-space:normal;max-width:140px}.speech-slot{grid-template-columns:82px 1fr;row-gap:6px}.speech-slot-time strong{font-size:26px}.speech-slot-text strong{font-size:18px}.venue-section{padding:66px 25px}.venue-grid{grid-template-columns:1fr;gap:35px}.venue-grid h2{font-size:54px}.venue-details{border-left:0;border-top:1px solid #779080;padding:21px 0 0}.venue-bottom{margin-top:40px;gap:15px;font-size:8px;letter-spacing:1.3px}.closing-section{padding:93px 24px}.closing-section h2{font-size:62px}.footer{flex-direction:column;padding:28px 22px;gap:5px;text-align:center}.footer p{font-size:14px}.dialog-inner{padding:36px 25px 26px}.dialog-inner h2{font-size:44px}.success-inner{padding:50px 26px 40px}.admin-top-inner{padding:0 18px}.admin-brand{font-size:23px}.admin-brand span{font-size:8px;letter-spacing:1px;margin-left:7px}.admin-actions{gap:12px}.admin-website-link{font-size:10px}.quiet-button{font-size:10px}.admin-main{padding:42px 18px}.admin-intro{align-items:flex-start;flex-direction:column}.admin-intro .section-title{font-size:48px}.opening-control{align-items:flex-start;flex-direction:row;flex-wrap:wrap}.dashboard-stats{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:42px}.stat-tile{padding:19px}.section-head h2{font-size:34px}.admin-slot{grid-template-columns:80px 1fr;gap:15px}.admin-slot-buttons{grid-column:2}.admin-slot-time{font-size:23px}.admin-bottom-grid{grid-template-columns:1fr;gap:0}.inline-slot-form{grid-template-columns:1fr 1fr}.inline-slot-form label:nth-of-type(3){grid-column:1 / -1}.inline-slot-form button{grid-column:1 / -1}.setup-layout,.login-layout{padding:40px 17px}.setup-panel,.login-panel{padding:26px 23px}.two-fields{grid-template-columns:1fr}.admin-end{flex-direction:column;gap:6px}}
@media(max-width:430px){.header-date{display:none}.hero-art{padding:34px 48px}.hero h1{font-size:85px}.art-monogram{font-size:75px}.art-text-top{font-size:6.8px;letter-spacing:2px}.art-stamp{right:9px;bottom:34px}.slots-head{flex-direction:column;gap:9px}.availability-legend{max-width:100%;padding-top:0}.speech-slot{grid-template-columns:76px 1fr;column-gap:10px}.speech-slot-action{grid-column:2}.slot-button{font-size:10px}.venue-grid h2{font-size:48px}.closing-section h2{font-size:51px}.hero-cta-note{font-size:13px}.header-link{margin-left:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
