/**
 * NEXORA INVITE — DIGITAL INVITATION PLATFORM
 * Module  : Public UI + Multi-Category Template Styles
 * Version : 2.2.0
 * Status  : CLEAN / STEP 09
 * Purpose : Mobile-first public catalog and thirteen invitation templates including five distinct wedding concepts.
 * Rule    : Client-facing surfaces contain no internal development terminology.
 * Modified: 2026-08-03 00:32 WIB
 */

:root{
  --navy:#0B1530;--navy-2:#102856;--blue:#2563EB;--cyan:#22D3EE;--gold:#D7A14A;--ink:#14213d;--muted:#65708a;--line:#e3e8f1;--soft:#f5f8fc;--white:#fff;--success:#178a58;--warning:#b7791f;--danger:#cf3e4d;--shadow:0 22px 60px rgba(11,21,48,.12);--radius:22px;--container:min(1180px,calc(100% - 32px));
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.5}button,input,select,textarea{font:inherit}button,a{transition:.2s ease}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}.container{width:var(--container);margin-inline:auto}.mobile-only{display:inline-flex}.desktop-only,.desktop-nav{display:none}.brand-logo{width:190px;height:auto}.brand-logo--compact{width:158px}.brand-link,.dashboard-brand{display:flex;align-items:center;gap:10px}.brand-module{font-weight:800;font-size:.72rem;letter-spacing:.22em;color:var(--blue);padding-left:10px;border-left:1px solid var(--line)}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.site-header__inner{height:68px;display:flex;align-items:center;justify-content:space-between;gap:18px}.site-header__actions{display:flex;align-items:center;gap:8px}.mobile-menu{display:none;padding:8px 16px 18px;border-top:1px solid var(--line);background:#fff}.mobile-menu.is-open{display:grid}.mobile-menu a{padding:12px;border-bottom:1px solid var(--line)}.icon-button{border:1px solid var(--line);background:#fff;border-radius:12px;min-width:42px;height:42px;display:inline-grid;place-items:center;cursor:pointer}.button{border:1px solid transparent;border-radius:12px;padding:10px 15px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}.button[disabled]{opacity:.45;cursor:not-allowed}.button--primary{background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;box-shadow:0 10px 24px rgba(37,99,235,.2)}.button--primary:hover{transform:translateY(-1px)}.button--ghost{background:#fff;border-color:var(--line);color:var(--navy)}.button--danger{background:#fff3f4;border-color:#f2b8bf;color:var(--danger)}.button--light{background:#fff;color:var(--navy)}.button--large{padding:14px 22px;border-radius:14px}.button--small{padding:8px 12px}.button--full{width:100%}.eyebrow{display:inline-block;color:var(--blue);font-size:.74rem;font-weight:900;letter-spacing:.18em;margin-bottom:10px}.hero{position:relative;overflow:hidden;padding:64px 0 44px;background:radial-gradient(circle at 90% 10%,rgba(34,211,238,.14),transparent 30%),radial-gradient(circle at 10% 80%,rgba(37,99,235,.08),transparent 33%),#fff}.hero:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-240px;top:-160px;background:linear-gradient(140deg,rgba(37,99,235,.12),rgba(34,211,238,.08));filter:blur(2px)}.hero-grid{display:grid;gap:38px;align-items:center}.hero-copy h1{font-size:clamp(2.25rem,9vw,4.6rem);line-height:1.02;letter-spacing:-.055em;margin-bottom:22px}.hero-copy h1 em{font-style:normal;background:linear-gradient(90deg,var(--blue),var(--cyan));-webkit-background-clip:text;color:transparent}.hero-copy>p{font-size:1.08rem;color:var(--muted);max-width:720px}.hero-features{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0;color:var(--navy);font-size:.92rem;font-weight:700}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.trust-row{display:flex;gap:12px;align-items:center;margin-top:24px}.trust-row p{margin:0;color:var(--muted);font-size:.86rem}.avatar-stack{display:flex}.avatar-stack span{width:33px;height:33px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--cyan));border:3px solid #fff;color:#fff;display:grid;place-items:center;font-size:.68rem;font-weight:800;margin-left:-7px}.avatar-stack span:first-child{margin-left:0}.hero-preview{position:relative}.device-browser{border:8px solid var(--navy);border-radius:24px;box-shadow:var(--shadow);overflow:hidden;background:#fff}.device-browser__bar{height:40px;background:#f3f5f8;display:flex;align-items:center;gap:7px;padding:0 12px}.device-browser__bar i{width:8px;height:8px;border-radius:50%;background:#c8ced8}.device-browser__bar span{font-size:.68rem;color:var(--muted);margin-left:7px}.floating-card{position:absolute;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px 16px;box-shadow:var(--shadow);display:flex;flex-direction:column}.floating-card strong{font-size:1.18rem}.floating-card span{font-size:.72rem;color:var(--muted)}.floating-card--one{left:-8px;bottom:-18px}.floating-card--two{right:8px;top:-20px}.section{padding:72px 0}.section--tight{padding:28px 0}.section--soft{background:var(--soft)}.section--dark{background:linear-gradient(135deg,#081329,#10366e);color:#fff}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.section-heading.centered{justify-content:center;text-align:center}.section-heading h2{font-size:clamp(1.8rem,5vw,3rem);letter-spacing:-.04em;margin-bottom:8px}.section-heading p{color:var(--muted);max-width:720px;margin:0}.section-heading>a{color:var(--blue);font-weight:750;white-space:nowrap}.category-grid{display:grid;gap:12px}.category-card{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:18px;padding:16px;background:#fff;box-shadow:0 8px 24px rgba(11,21,48,.05)}.category-card>span{font-size:1.8rem}.category-card h3{margin:0 0 2px;font-size:1rem}.category-card p{margin:0;color:var(--muted);font-size:.78rem}.category-card b{margin-left:auto}.template-grid{display:grid;grid-template-columns:1fr;gap:18px}.template-card{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 10px 28px rgba(11,21,48,.06)}.template-card[hidden]{display:none}.template-card__media{position:relative;display:block;background:var(--soft);aspect-ratio:1.9/1;overflow:hidden}.template-card__media img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;top:12px;right:12px;padding:5px 8px;border-radius:999px;font-size:.63rem;font-weight:900;letter-spacing:.05em}.badge--premium{background:#ffd27c;color:#5d3a00}.badge--new{background:#c9f8d7;color:#11613c}.badge--popular{background:#ffd3d8;color:#8f1d2c}.favorite{position:absolute;top:10px;left:10px;border:0;background:rgba(255,255,255,.88);width:34px;height:34px;border-radius:50%;font-size:1.2rem}.template-card__body{display:flex;justify-content:space-between;gap:12px;padding:14px 14px 8px}.template-card__body h3{margin:0 0 3px;font-size:1rem}.template-card__body p{margin:0;color:var(--muted);font-size:.76rem}.template-card__body strong{font-size:.86rem;white-space:nowrap}.template-card__actions{display:grid;grid-template-columns:1fr 1.2fr;gap:8px;padding:10px 14px 15px}.template-card__actions .button{font-size:.78rem;padding:9px}.workflow-grid,.pricing-grid{display:grid;gap:16px}.workflow-grid article{border:1px solid var(--line);border-radius:20px;padding:22px;background:#fff}.workflow-grid article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;font-weight:900}.workflow-grid h3{margin:18px 0 8px}.workflow-grid p{color:var(--muted);margin:0}.price-card{border:1px solid var(--line);border-radius:22px;padding:26px;background:#fff;position:relative}.price-card.is-featured{border:2px solid var(--blue);box-shadow:var(--shadow)}.price-ribbon{position:absolute;right:18px;top:-12px;background:var(--gold);color:#fff;border-radius:999px;padding:6px 12px;font-size:.65rem;font-weight:900}.price-card h3{font-size:1.25rem}.price-card>strong{display:block;font-size:2rem;margin:10px 0}.price-card ul{list-style:none;padding:0;display:grid;gap:10px;color:var(--muted);margin-bottom:22px}.cta-panel{display:flex;flex-direction:column;gap:20px;align-items:flex-start}.cta-panel h2{font-size:clamp(1.8rem,5vw,3rem);margin-bottom:8px}.cta-panel p{color:#bdcae6;max-width:750px}.site-footer{background:#061023;color:#d7e0f4;padding:52px 0 20px}.footer-grid{display:grid;gap:30px}.footer-grid section{display:flex;flex-direction:column;gap:8px}.footer-grid h3{color:#fff;margin-bottom:6px}.footer-grid p,.footer-grid a{font-size:.86rem;color:#aebbd3;margin:0}.footer-grid .brand-logo{width:220px;max-height:70px;object-fit:contain;object-position:left}.brand-colors{display:flex;gap:8px;margin-top:10px}.brand-colors span{width:28px;height:8px;border-radius:99px;background:var(--navy)}.brand-colors span:nth-child(2){background:var(--blue)}.brand-colors span:nth-child(3){background:var(--cyan)}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:30px;padding-top:18px;display:flex;flex-direction:column;gap:8px;font-size:.78rem;color:#8090ae}.catalog-hero{padding:50px 0 24px;background:linear-gradient(180deg,#f8fbff,#fff)}.catalog-hero h1{font-size:clamp(2rem,7vw,4rem);letter-spacing:-.05em;margin-bottom:10px}.catalog-hero>div>p{color:var(--muted);max-width:700px}.catalog-searchbar{display:grid;gap:10px;background:#fff;border:1px solid var(--line);padding:12px;border-radius:18px;box-shadow:0 14px 34px rgba(11,21,48,.07);margin-top:24px}.catalog-searchbar label{display:flex;align-items:center;border:1px solid var(--line);border-radius:12px;padding:0 12px}.catalog-searchbar input,.catalog-searchbar select{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px;color:var(--ink);outline:none}.catalog-searchbar label input{border:0}.tag-row{display:flex;gap:8px;overflow:auto;padding:14px 0 3px}.tag-row button{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 13px;color:var(--ink);cursor:pointer}.tag-row button.is-active{background:var(--navy);color:#fff}.catalog-results{padding-top:30px}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;color:var(--muted)}.catalog-toolbar strong{color:var(--navy)}.empty-state{text-align:center;padding:70px 20px;border:1px dashed var(--line);border-radius:20px}.preview-toolbar{position:sticky;top:68px;z-index:30;background:#fff;border-bottom:1px solid var(--line)}.preview-toolbar .container{display:flex;flex-direction:column;gap:10px;padding:12px 0}.preview-toolbar .container>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.preview-toolbar strong{font-size:1rem}.preview-toolbar span{color:var(--muted);font-size:.8rem}.preview-stage{padding:28px 0 70px;background:#eef3f8}.preview-frame{width:min(980px,calc(100% - 24px));margin:auto;border-radius:24px;overflow:hidden;background:#fff;box-shadow:var(--shadow);transition:.3s}.preview-frame.is-mobile{width:min(430px,calc(100% - 24px))}.invitation-surface{position:relative;min-height:530px;padding:80px 20px 55px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:radial-gradient(circle at 20% 10%,var(--invite-bg2),transparent 35%),linear-gradient(145deg,var(--invite-bg),var(--invite-bg2));color:var(--invite-text)}.invitation-surface--compact{min-height:370px;padding:48px 15px}.invite-ornament{position:absolute;border:2px solid var(--invite-accent);border-radius:50%;opacity:.25}.invite-ornament--one{width:220px;height:220px;left:-100px;top:-80px}.invite-ornament--two{width:280px;height:280px;right:-130px;bottom:-130px}.draft-watermark{position:absolute;right:-38px;bottom:30px;transform:rotate(-35deg);background:rgba(255,255,255,.15);padding:8px 70px;font-weight:900;letter-spacing:.2em}.invite-kicker{letter-spacing:.3em;font-size:.75rem;text-transform:uppercase}.invitation-surface h1{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:500;font-size:clamp(2.2rem,8vw,5.5rem);line-height:1;margin:18px 0}.invitation-surface h1 span{display:block;font-size:.6em;color:var(--invite-accent);padding:8px}.invite-date{font-weight:700}.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;border:1px solid color-mix(in srgb,var(--invite-accent),transparent 45%);padding:10px;border-radius:14px;margin:20px 0}.countdown div{min-width:56px}.countdown strong,.countdown span{display:block}.countdown strong{font-size:1.2rem}.countdown span{font-size:.66rem}.invite-button{display:inline-flex;border:1px solid var(--invite-accent);background:var(--invite-accent);color:var(--invite-bg);padding:10px 18px;border-radius:999px;font-weight:800;cursor:pointer}.invite-sections{background:#fff;color:#24304a}.invite-sections>section{padding:70px 22px;text-align:center}.invite-sections>section:nth-child(even){background:#f7f8fb}.invite-sections h2{font-family:Georgia,serif;font-size:clamp(1.7rem,5vw,3rem);max-width:720px;margin:0 auto 18px}.invite-sections p{max-width:700px;margin:0 auto;color:#667086}.profile-pair{display:grid;gap:16px}.profile-pair article,.event-detail-card{max-width:650px;margin:auto;border:1px solid var(--line);border-radius:20px;padding:28px;background:#fff}.profile-pair article>span{color:var(--invite-accent);font-weight:900}.profile-pair h3{font-family:Georgia,serif;font-size:2rem;margin:8px}.event-detail-card strong{display:block;margin:12px}.sample-gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:820px;margin:auto}.sample-gallery div{aspect-ratio:1/1.15;border-radius:18px;background:linear-gradient(145deg,var(--invite-bg),var(--invite-accent));display:grid;place-items:center;color:#fff;font-size:2rem;font-family:Georgia,serif}.gift-section{background:linear-gradient(145deg,var(--invite-bg),var(--invite-bg2))!important;color:var(--invite-text)!important}.gift-section p{color:var(--invite-text)}.public-form{display:grid;gap:12px;max-width:520px;margin:24px auto}.public-form input,.public-form select,.public-form textarea{border:1px solid var(--line);border-radius:12px;padding:13px;background:#fff}.wish-list{display:grid;gap:12px;max-width:680px;margin:30px auto 0}.wish-list article{text-align:left;border:1px solid var(--line);border-radius:14px;padding:15px;background:#fff}.wish-list p{margin:5px 0 0}.invite-closing h2{color:var(--invite-accent)}.not-found{min-height:100vh;display:grid;place-content:center;text-align:center;gap:18px;padding:20px}.not-found img{width:240px;margin:auto}.dashboard-layout{min-height:100vh;background:#f4f7fb}.dashboard-sidebar{position:fixed;inset:0 auto 0 0;width:270px;background:#fff;border-right:1px solid var(--line);padding:20px;z-index:80;transform:translateX(-105%);transition:.25s;display:flex;flex-direction:column}.dashboard-sidebar.is-open{transform:translateX(0);box-shadow:var(--shadow)}.dashboard-brand{padding:4px 4px 24px;border-bottom:1px solid var(--line)}.dashboard-brand img{width:150px}.dashboard-brand>span{font-size:.65rem;font-weight:900;color:var(--blue)}.dashboard-sidebar nav{display:grid;gap:7px;margin-top:24px}.dashboard-sidebar nav a{padding:12px 14px;border-radius:12px;display:flex;justify-content:space-between;align-items:center;color:#48536a}.dashboard-sidebar nav a.is-active{background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff}.dashboard-sidebar nav b{font-size:.68rem;background:#fff1db;color:#a65c00;padding:4px 7px;border-radius:99px}.sidebar-help{margin-top:auto;background:linear-gradient(145deg,var(--navy),var(--navy-2));color:#fff;border-radius:18px;padding:18px}.sidebar-help p{font-size:.8rem;color:#c8d3e9}.sidebar-help a{font-size:.78rem;font-weight:800;color:var(--cyan)}.dashboard-main{min-width:0}.dashboard-topbar{height:auto;min-height:80px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;padding:13px 16px;position:sticky;top:0;z-index:40}.dashboard-topbar>div:nth-child(2){min-width:0}.dashboard-topbar h1{font-size:1.15rem;margin:0}.dashboard-topbar p{font-size:.72rem;color:var(--muted);margin:1px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-topbar__actions{margin-left:auto;display:flex;align-items:center;gap:8px}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-size:.72rem;font-weight:900}.dashboard-content{padding:16px}.summary-grid,.metric-grid{display:grid;gap:12px}.summary-grid article,.metric-grid article{background:#fff;border:1px solid var(--line);border-radius:17px;padding:16px;display:flex;flex-direction:column;gap:8px}.summary-grid article>span,.metric-grid article>span{color:var(--muted);font-size:.78rem}.summary-grid article>a{color:var(--blue);font-size:.78rem;font-weight:750}.template-summary{display:flex;align-items:center;gap:10px}.template-summary img{width:58px;height:42px;object-fit:cover;border-radius:8px}.metric-value,.metric-grid strong{font-size:1.45rem;color:var(--navy)}.metric-grid small{color:var(--success)}.progress{height:7px;border-radius:99px;background:#e7ebf2;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--cyan));border-radius:inherit}.editor-layout,.admin-workspace{display:grid;gap:16px;margin-top:16px}.editor-panel,.live-preview,.review-queue,.admin-detail,.analytics-grid>article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:15px}.editor-steps{display:flex;gap:8px;overflow:auto;margin-bottom:16px}.editor-steps button{border:1px solid var(--line);background:#fff;border-radius:12px;padding:9px 12px;white-space:nowrap;display:flex;gap:8px;align-items:center}.editor-steps button.is-active{background:#eef4ff;border-color:#b8cdfb;color:var(--blue)}.editor-steps span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-size:.7rem}.editor-form{min-width:0}.form-section{display:grid;gap:14px}.form-heading{display:flex;gap:12px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:2px}.form-heading>span{width:38px;height:38px;border-radius:12px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900}.form-heading h2{margin:0;font-size:1.18rem}.form-heading p{margin:3px 0 0;color:var(--muted);font-size:.8rem}.editor-form label,.admin-detail label,.admin-bottom-grid label{display:grid;gap:6px;font-size:.8rem;font-weight:750;color:#34405a}.editor-form input,.editor-form select,.editor-form textarea,.admin-detail textarea,.admin-bottom-grid input{width:100%;border:1px solid var(--line);border-radius:11px;padding:11px;background:#fff;color:var(--ink);outline:none}.editor-form input:focus,.editor-form textarea:focus,.editor-form select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.1)}.form-grid{display:grid;gap:12px}.upload-zone{border:2px dashed #b9c7dc!important;border-radius:16px;padding:28px!important;text-align:center;cursor:pointer;background:#f8fbff}.upload-zone input{display:none}.upload-zone span{font-weight:400;color:var(--muted)}.upload-list{display:flex;flex-wrap:wrap;gap:8px}.upload-list span{background:var(--soft);border:1px solid var(--line);border-radius:99px;padding:7px 10px;font-size:.74rem}.editor-actions{display:flex;gap:10px;justify-content:flex-end;border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.panel-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.panel-heading h2,.panel-heading h3{margin:0}.panel-heading h2{font-size:1.15rem}.panel-heading a{color:var(--blue);font-size:.78rem;font-weight:750}.live-preview{min-width:0}.live-preview .invitation-surface{min-height:430px;border-radius:16px}.validation-card,.history-card{border:1px solid var(--line);border-radius:15px;padding:15px;margin-top:14px}.validation-card{display:grid;grid-template-columns:1fr auto;gap:8px}.validation-card .progress,.validation-card p{grid-column:1/-1}.validation-card p{margin:0;color:var(--muted);font-size:.78rem}.history-card ol{list-style:none;padding:0;margin:18px 0;display:grid;gap:18px}.history-card li{display:flex;gap:12px;opacity:.45}.history-card li.is-current{opacity:1}.history-card li>span{width:12px;height:12px;border-radius:50%;background:var(--line);margin-top:6px;box-shadow:0 0 0 4px #f0f3f8}.history-card li.is-current>span{background:var(--blue);box-shadow:0 0 0 4px #dfeaff}.history-card li p{margin:3px 0;color:var(--muted);font-size:.76rem}.history-card blockquote{margin:10px 0 0;border-left:4px solid var(--warning);background:#fff8ea;padding:12px}.status{display:inline-flex;width:max-content;border-radius:999px;padding:5px 9px;font-size:.67rem;font-weight:850}.status--neutral{background:#edf0f4;color:#596477}.status--warning{background:#fff1d8;color:#9b5b00}.status--danger{background:#ffe5e8;color:#a92736}.status--success{background:#dff7e9;color:#116b43}.status--info{background:#e2efff;color:#215a9b}.table-wrap{overflow:auto}.review-queue table{border-collapse:collapse;width:100%;min-width:800px}.review-queue th,.review-queue td{text-align:left;border-bottom:1px solid var(--line);padding:11px 9px;font-size:.73rem}.review-queue th{color:var(--muted);font-weight:750}.review-queue tr.is-selected{background:#f1f6ff}.table-template{display:flex;align-items:center;gap:7px}.table-template img{width:42px;height:28px;object-fit:cover;border-radius:5px}.admin-bottom-grid,.analytics-grid{display:grid;gap:14px;margin-top:16px}.admin-bottom-grid>article{border:1px solid var(--line);border-radius:15px;padding:15px}.audit-card label{display:flex;align-items:center;gap:8px;margin:8px 0}.admin-stat-list{list-style:none;padding:0;margin:0;display:grid;gap:9px}.admin-stat-list li{display:flex;justify-content:space-between}.admin-detail .invitation-surface{min-height:300px;border-radius:14px}.admin-detail dl{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-detail dl div{border-bottom:1px solid var(--line);padding-bottom:8px}.admin-detail dt{font-size:.68rem;color:var(--muted)}.admin-detail dd{margin:2px 0 0;font-size:.8rem;font-weight:750}.decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.decision-grid .button:last-child{grid-column:1/-1}.quick-actions{margin-top:20px;border-top:1px solid var(--line);padding-top:14px}.quick-actions>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.quick-actions button{border:1px solid var(--line);border-radius:12px;background:#fff;padding:13px;display:grid;place-items:center;gap:5px;font-size:1.2rem}.quick-actions button span{font-size:.68rem}.line-chart{height:150px;display:flex;align-items:end;gap:8px;padding-top:20px}.line-chart span{flex:1;background:linear-gradient(180deg,var(--cyan),var(--blue));border-radius:6px 6px 0 0}.bar-row{display:grid;grid-template-columns:110px 1fr 34px;align-items:center;gap:8px;margin:12px 0;font-size:.76rem}.bar-row i{height:8px;background:#e8ecf3;border-radius:99px;overflow:hidden}.bar-row b{display:block;height:100%;background:linear-gradient(90deg,var(--navy),var(--blue))}.notifications{list-style:none;padding:0;margin:0;display:grid;gap:12px}.notifications li{display:flex;gap:10px}.notifications small{display:block;color:var(--muted)}.dot{width:10px;height:10px;border-radius:50%;margin-top:6px}.dot.success{background:var(--success)}.dot.danger{background:var(--danger)}.toast-root{position:fixed;right:16px;bottom:16px;z-index:200;display:grid;gap:10px}.toast{padding:13px 16px;background:var(--navy);color:#fff;border-radius:12px;box-shadow:var(--shadow);max-width:min(360px,calc(100vw - 32px));font-size:.86rem}.toast--danger{background:var(--danger)}
@media(min-width:600px){.category-grid{grid-template-columns:1fr 1fr}.template-grid{grid-template-columns:repeat(2,1fr)}.workflow-grid{grid-template-columns:repeat(2,1fr)}.pricing-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:2fr 1fr 1fr}.form-grid{grid-template-columns:1fr 1fr}.summary-grid,.metric-grid{grid-template-columns:1fr 1fr}.sample-gallery{grid-template-columns:repeat(3,1fr)}.profile-pair{grid-template-columns:1fr 1fr}.preview-toolbar .container{flex-direction:row;justify-content:space-between}.decision-grid{grid-template-columns:repeat(3,1fr)}.decision-grid .button:last-child{grid-column:auto}}
@media(min-width:900px){.mobile-only{display:none}.desktop-only,.desktop-nav{display:flex}.site-header__inner{height:76px}.desktop-nav{align-items:center;gap:24px;margin-left:auto}.desktop-nav a{font-size:.86rem;font-weight:700;color:#4c566e}.desktop-nav a.is-active{color:var(--blue)}.hero{padding:88px 0 70px}.hero-grid{grid-template-columns:1.02fr .98fr}.category-grid{grid-template-columns:repeat(3,1fr)}.template-grid{grid-template-columns:repeat(3,1fr)}.template-grid--featured{grid-template-columns:repeat(4,1fr)}.workflow-grid{grid-template-columns:repeat(5,1fr)}.cta-panel{flex-direction:row;justify-content:space-between;align-items:center}.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr}.footer-bottom{flex-direction:row;justify-content:space-between}.catalog-searchbar{grid-template-columns:minmax(280px,2.2fr) repeat(3,1fr);align-items:center}.mobile-filter-toggle{display:none}.dashboard-sidebar{transform:none}.dashboard-main{margin-left:270px}.dashboard-topbar{padding:14px 24px}.dashboard-topbar h1{font-size:1.4rem}.dashboard-content{padding:24px}.summary-grid,.metric-grid{grid-template-columns:repeat(4,1fr)}.editor-layout{grid-template-columns:minmax(0,1fr) minmax(380px,.9fr)}.editor-panel{display:grid;grid-template-columns:190px 1fr;gap:18px}.editor-steps{display:grid;align-content:start;overflow:visible}.editor-steps button{width:100%}.admin-workspace{grid-template-columns:minmax(0,1.55fr) minmax(340px,.65fr)}.admin-bottom-grid{grid-template-columns:repeat(3,1fr)}.analytics-grid{grid-template-columns:1.3fr 1fr 1fr}.admin-detail{position:sticky;top:104px;height:max-content}.live-preview{position:sticky;top:104px;height:max-content}.category-grid{grid-template-columns:repeat(6,1fr)}.category-card{min-height:94px}.category-card>span{font-size:1.35rem}.category-card p{display:none}}
@media(min-width:1200px){.template-grid{grid-template-columns:repeat(4,1fr)}.hero-copy h1{font-size:4.75rem}.category-card p{display:block}.admin-detail .invitation-surface{min-height:360px}}

/* STEP 01 — Clean public catalog */
.catalog-page--empty{min-height:70vh}.catalog-empty-hero{position:relative;overflow:hidden;padding:72px 0 80px;background:linear-gradient(145deg,#fff 0%,#f5f9ff 55%,#e8f7ff 100%)}.catalog-empty-layout{display:grid;gap:36px;align-items:center}.catalog-empty-copy{max-width:680px}.catalog-empty-copy h1{font-size:clamp(2.4rem,8vw,5.2rem);line-height:.98;letter-spacing:-.055em;margin:14px 0 20px;color:var(--navy)}.catalog-empty-copy>p{font-size:1rem;line-height:1.8;color:var(--muted);max-width:640px}.catalog-empty-points{display:grid;gap:10px;margin:24px 0;color:#34405a;font-weight:750}.catalog-empty-visual{min-height:400px;position:relative;display:grid;place-items:center}.catalog-empty-card{position:absolute;border:1px solid rgba(255,255,255,.48);box-shadow:0 30px 70px rgba(11,21,48,.18);backdrop-filter:blur(18px);border-radius:28px;padding:30px;display:flex;flex-direction:column;gap:10px}.catalog-empty-card span{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-weight:900}.catalog-empty-card strong{font-family:var(--font-display);font-size:1.75rem}.catalog-empty-card small{opacity:.72}.catalog-empty-card--main{z-index:2;width:min(82%,360px);min-height:280px;justify-content:end;background:linear-gradient(150deg,#071b3f,#0b2a5c);color:#fff;transform:rotate(-4deg)}.catalog-empty-card--side{z-index:1;width:min(68%,290px);right:0;top:34px;background:rgba(255,255,255,.82);color:var(--navy);transform:rotate(7deg)}.catalog-empty-orbit{position:absolute;border-radius:50%;border:1px solid rgba(37,99,235,.18)}.catalog-empty-orbit--one{width:330px;height:330px}.catalog-empty-orbit--two{width:470px;height:470px}.catalog-roadmap{padding-top:10px}.home-studio-preview{position:relative;min-height:520px;display:grid;place-items:center}.home-studio-badge{position:absolute;top:5%;right:8%;z-index:3;border-radius:99px;padding:9px 13px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);font-size:.7rem;font-weight:900;letter-spacing:.13em;color:var(--blue)}.home-studio-phone{width:min(78vw,340px);aspect-ratio:.67;border:11px solid #071126;border-radius:42px;background:linear-gradient(155deg,#071b3f,#0b2a5c);box-shadow:0 35px 80px rgba(11,21,48,.28);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;position:relative;overflow:hidden}.home-studio-phone__top{position:absolute;top:12px;width:92px;height:23px;border-radius:99px;background:#020714}.home-studio-phone small{letter-spacing:.25em;font-size:.62rem;opacity:.78}.home-studio-phone strong{font-family:var(--font-display);font-size:2.25rem;max-width:250px}.home-studio-phone em{font-style:normal;color:#f1c66d}.home-studio-phone button{border:1px solid rgba(255,255,255,.48);background:rgba(255,255,255,.08);color:#fff;border-radius:99px;padding:10px 18px}.home-studio-flower{position:absolute;width:190px;height:190px;border-radius:50%;filter:blur(1px);opacity:.3;background:radial-gradient(circle at 45% 45%,#fff 0 6%,#82dfff 7% 13%,#2563eb 14% 24%,transparent 25%)}.home-studio-flower--one{left:-54px;top:72px}.home-studio-flower--two{right:-60px;bottom:70px}.home-coming-soon{border:1px solid var(--line);border-radius:26px;padding:28px;background:linear-gradient(145deg,#fff,#f3f8ff);display:flex;flex-direction:column;gap:22px;box-shadow:var(--shadow)}.home-coming-soon span{color:var(--blue);font-weight:900;letter-spacing:.12em}.home-coming-soon h3{font-family:var(--font-display);font-size:clamp(1.7rem,5vw,2.7rem);margin:7px 0}.home-coming-soon p{color:var(--muted);max-width:720px;line-height:1.7}.home-coming-soon>strong{align-self:flex-start;border-radius:99px;background:#fff1d8;color:#9b5b00;padding:9px 13px;font-size:.72rem}.customer-empty-state{min-height:calc(100vh - 170px);display:grid;gap:32px;place-items:center;align-content:center;background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px}.customer-empty-state>div:last-child{max-width:620px}.customer-empty-state h2{font-family:var(--font-display);font-size:clamp(2rem,7vw,3.8rem);line-height:1.03;margin:12px 0}.customer-empty-state p{color:var(--muted);line-height:1.8}.customer-empty-state__visual{width:min(78vw,290px);aspect-ratio:.75;border-radius:28px;background:linear-gradient(150deg,#071b3f,#0b2a5c);color:#fff;padding:26px;box-shadow:0 28px 70px rgba(11,21,48,.23);display:flex;flex-direction:column;justify-content:end;gap:9px;transform:rotate(-3deg)}.customer-empty-state__visual span{color:var(--cyan);font-weight:900}.customer-empty-state__visual strong{font-family:var(--font-display);font-size:2rem}.customer-empty-state__visual small{opacity:.7}
@media(min-width:760px){.catalog-empty-layout{grid-template-columns:1.1fr .9fr}.catalog-empty-visual{min-height:520px}.home-coming-soon{flex-direction:row;justify-content:space-between;align-items:center}.home-coming-soon>strong{align-self:center}.customer-empty-state{grid-template-columns:.7fr 1.3fr;padding:46px}}

/* STEP 01B — Client-facing catalog */
.catalog-searchbar--professional{grid-template-columns:1fr}.catalog-search-field span{font-size:1.25rem;color:var(--muted)}.catalog-tag-row{padding-bottom:8px}.catalog-client-empty{margin-top:18px;min-height:360px;border:1px solid var(--line);border-radius:24px;background:radial-gradient(circle at 50% 0%,rgba(34,211,238,.08),transparent 42%),linear-gradient(180deg,#fff,#f8fbff);padding:48px 24px;display:grid;place-items:center;align-content:center;text-align:center;box-shadow:0 18px 48px rgba(11,21,48,.06)}.catalog-client-empty[hidden]{display:none}.catalog-client-empty__icon{width:72px;height:72px;border-radius:24px;display:grid;place-items:center;margin-bottom:18px;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;font-size:2rem;box-shadow:0 16px 34px rgba(37,99,235,.22)}.catalog-client-empty h2{font-size:clamp(1.8rem,5vw,2.7rem);margin:0 0 10px;letter-spacing:-.035em}.catalog-client-empty p{max-width:620px;color:var(--muted);line-height:1.75;margin:0}.catalog-client-empty__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px}.home-template-empty{border:1px solid var(--line);border-radius:24px;padding:30px;background:linear-gradient(145deg,#fff,#f4f8ff);box-shadow:var(--shadow);display:grid;gap:18px;align-items:center}.home-template-empty__icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;font-size:1.45rem}.home-template-empty h3{font-size:clamp(1.5rem,4vw,2.2rem);margin:0 0 6px}.home-template-empty p{color:var(--muted);margin:0}.home-studio-preview--client .home-studio-badge{letter-spacing:.1em}.catalog-toolbar{min-height:42px}
@media(min-width:760px){.home-template-empty{grid-template-columns:auto 1fr auto}}
@media(min-width:900px){.catalog-searchbar--professional{grid-template-columns:minmax(270px,2fr) repeat(4,minmax(125px,1fr))}}

/* STEP 01C — Reference public layout, empty catalog without internal messaging */
.nav-caret{font-size:.72rem;margin-left:4px}.desktop-nav a{display:inline-flex;align-items:center}.reference-home{background:#fff}.reference-hero{position:relative;overflow:hidden;padding:34px 0 18px;background:linear-gradient(100deg,#fff 0%,#fff 57%,#f4f7fb 100%)}.reference-hero:after{content:"";position:absolute;inset:auto -100px -180px auto;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(34,211,238,.14),rgba(37,99,235,.03) 55%,transparent 68%)}.reference-hero__grid{display:grid;gap:34px;align-items:center}.reference-hero__copy{position:relative;z-index:2}.reference-hero__copy h1{font-size:clamp(2.35rem,9vw,4.4rem);line-height:1.01;letter-spacing:-.055em;color:var(--navy);max-width:700px;margin:0 0 18px}.reference-hero__copy h1 em{font-style:normal;color:#d49a45}.reference-hero__copy>p{max-width:620px;color:#3f485d;font-size:1rem;line-height:1.65;margin-bottom:22px}.reference-benefits{display:grid;grid-template-columns:1fr;gap:13px;margin:21px 0 24px}.reference-benefits article{display:flex;gap:11px;align-items:flex-start}.reference-benefits article>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-size:1rem;flex:0 0 auto}.reference-benefits strong{display:block;font-size:.88rem;color:var(--navy)}.reference-benefits small{display:block;color:#6b7387;font-size:.72rem;line-height:1.45;margin-top:2px}.reference-hero__actions{display:flex;flex-wrap:wrap;gap:12px}.reference-trust{display:flex;align-items:center;gap:10px;margin-top:19px;color:#7b8190;font-size:.75rem}.reference-trust__avatars{display:flex}.reference-trust__avatars i{width:27px;height:27px;border-radius:50%;border:2px solid #fff;background:linear-gradient(145deg,#d8a37b,#274f79);margin-left:-6px}.reference-trust__avatars i:first-child{margin-left:0}.reference-trust__avatars i:nth-child(2){background:linear-gradient(145deg,#f2c1aa,#313f62)}.reference-trust__avatars i:nth-child(3){background:linear-gradient(145deg,#d9b88d,#245b73)}.reference-hero__visual{position:relative;min-height:330px;display:flex;align-items:flex-end;justify-content:center;z-index:1}.reference-laptop{width:min(100%,620px);position:relative}.reference-laptop__screen{border:10px solid #111;border-radius:19px 19px 9px 9px;background:#111;box-shadow:0 22px 38px rgba(11,21,48,.18);overflow:hidden;aspect-ratio:16/9}.reference-laptop__screen img{width:100%;height:100%;object-fit:cover}.reference-laptop__base{width:108%;height:17px;margin-left:-4%;border-radius:0 0 50% 50%;background:linear-gradient(#d8d8d8,#8f8f8f);box-shadow:0 11px 12px rgba(0,0,0,.16)}.reference-vase{display:none;position:absolute;right:-18px;bottom:8px;width:90px;height:145px;border-radius:26% 26% 39% 39%;background:repeating-linear-gradient(90deg,#eee 0 7px,#ddd 8px 11px);box-shadow:0 16px 20px rgba(0,0,0,.12)}.reference-vase b{position:absolute;left:43px;top:-74px;width:3px;height:80px;background:#cba36e;transform:rotate(-15deg)}.reference-vase i{position:absolute;width:34px;height:34px;border-radius:50%;background:#e7cfac;top:-65px;left:22px;box-shadow:24px 12px 0 #f1e2ca,-11px 25px 0 #d6ba8d}.reference-category-strip{padding:0 0 20px;background:#fff}.reference-category-grid{display:grid;gap:10px}.reference-category-grid>a{min-height:76px;border:1px solid #e4e8ef;border-radius:10px;display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;box-shadow:0 6px 17px rgba(11,21,48,.05)}.reference-category-grid>a>span{font-size:1.6rem}.reference-category-grid strong{font-size:.86rem;color:var(--navy);display:block}.reference-category-grid small{display:block;color:#737b8d;font-size:.68rem;line-height:1.4;margin-top:2px}.reference-category-grid b{margin-left:auto}.reference-featured{padding:4px 0 18px}.reference-section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.reference-section-title h2{font-size:1rem;margin:0;color:var(--navy);position:relative;padding-left:16px}.reference-section-title h2:before{content:"✦";position:absolute;left:0;color:#d49a45}.reference-section-title a{color:#17213a;font-size:.72rem;font-weight:750}.reference-featured-grid{grid-template-columns:repeat(2,1fr);gap:10px}.reference-featured-grid.is-empty{min-height:38px}.reference-lower-grid{padding:8px 0 30px}.reference-lower-grid__inner{display:grid;gap:18px}.reference-workflow,.reference-pricing,.reference-testimonial{min-width:0}.reference-workflow__steps{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;border:1px solid var(--line);border-radius:12px;padding:13px;background:#fff}.reference-workflow__steps article{text-align:center;position:relative;padding:5px}.reference-workflow__steps article>span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;margin:0 auto 6px;border:1px solid var(--line);font-size:1rem;color:var(--navy)}.reference-workflow__steps strong{display:block;font-size:.68rem;color:var(--navy)}.reference-workflow__steps small{display:block;font-size:.56rem;color:#737b8d;line-height:1.45;margin-top:3px}.reference-workflow__steps i{display:none}.reference-pricing__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.reference-pricing__grid article{position:relative;text-align:center;border:1px solid var(--line);border-radius:10px;padding:12px 7px;background:#fff}.reference-pricing__grid article.is-featured{border-color:#193a79;box-shadow:0 7px 22px rgba(25,58,121,.12)}.reference-pricing__grid mark{position:absolute;top:-10px;left:50%;transform:translateX(-50%);background:#d49a45;color:#fff;border-radius:99px;padding:4px 8px;font-size:.48rem;font-weight:900;white-space:nowrap}.reference-pricing__grid h3{font-size:.75rem;margin-bottom:4px}.reference-pricing__grid p{font-size:.56rem;line-height:1.35;color:#737b8d;min-height:31px}.reference-pricing__grid strong{display:block;font-size:.85rem;margin:8px 0}.reference-pricing__grid .button{font-size:.58rem;padding:7px 5px;width:100%}.reference-testimonial article{border:1px solid var(--line);border-radius:12px;padding:15px;position:relative;min-height:157px}.reference-testimonial article>b{color:#d49a45;font-size:1.8rem;line-height:1}.reference-testimonial article>p{font-size:.67rem;color:#465066;line-height:1.55}.reference-testimonial article>div{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center}.reference-testimonial__avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--navy),var(--cyan));color:#fff;display:grid;place-items:center;grid-row:span 2}.reference-testimonial article>div strong{font-size:.64rem}.reference-testimonial article>div small{font-size:.55rem;color:#7f8798}.reference-testimonial article>em{position:absolute;right:14px;bottom:15px;font-size:.65rem;color:#f4a300;font-style:normal}.reference-footer{padding-top:30px}.reference-footer__grid{display:grid;gap:20px}.reference-footer__brand p{max-width:290px}.reference-footer__social{display:flex;gap:8px;margin-top:8px}.reference-footer__social span{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.09)}.reference-footer__newsletter label{display:flex;background:#fff;border-radius:6px;overflow:hidden;margin-top:7px}.reference-footer__newsletter input{min-width:0;border:0;padding:9px;width:100%;font-size:.7rem}.reference-footer__newsletter button{border:0;background:#fff;color:var(--navy);padding:0 11px}.reference-footer__bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:13px;margin-top:22px;display:flex;flex-direction:column;gap:12px;font-size:.66rem;color:#b7c2d7}.reference-footer__bottom>div{display:flex;gap:13px;align-items:center;color:#fff}.reference-footer__bottom b{font-size:.65rem}

.reference-catalog{background:#fff}.reference-catalog__hero{padding:24px 0 12px;background:linear-gradient(110deg,#fff 0%,#fff 68%,#f5f1ef 100%)}.reference-breadcrumb{display:flex;align-items:center;gap:9px;font-size:.69rem;color:#778094;margin-bottom:13px}.reference-breadcrumb b{font-weight:500}.reference-catalog__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;position:relative}.reference-catalog__heading h1{font-size:clamp(2rem,6vw,3.6rem);line-height:1;letter-spacing:-.045em;color:var(--navy);margin:0 0 9px}.reference-catalog__heading p{color:#586178;max-width:520px;font-size:.84rem;line-height:1.55}.reference-catalog__decor{display:none;width:160px;height:90px;position:relative}.reference-catalog__decor b{position:absolute;bottom:0;right:20px;width:55px;height:64px;border-radius:20% 20% 32% 32%;background:repeating-linear-gradient(90deg,#eee 0 5px,#ddd 6px 8px)}.reference-catalog__decor i{position:absolute;width:2px;height:55px;background:#c7a46e;right:48px;bottom:50px}.reference-catalog__decor i:nth-child(2){transform:rotate(25deg);right:35px}.reference-catalog__decor i:nth-child(3){transform:rotate(-20deg);right:60px}.reference-catalog__filterbar{display:grid;gap:8px;margin-top:17px;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 6px 18px rgba(11,21,48,.04)}.reference-catalog__filterbar label{border:1px solid var(--line);border-radius:7px;padding:7px 9px;display:flex;flex-direction:column;justify-content:center}.reference-catalog__filterbar label small{font-size:.58rem;font-weight:800;color:#17213a}.reference-catalog__filterbar select,.reference-catalog__filterbar input{border:0;outline:0;background:transparent;width:100%;font-size:.67rem;color:#34405a;padding:1px 0}.reference-catalog__search{flex-direction:row!important;align-items:center;gap:8px}.reference-catalog__search span{font-size:1rem;color:#4d5870}.reference-catalog__search input{font-size:.72rem}.reference-catalog__tags{display:flex;align-items:center;gap:7px;overflow:auto;padding:10px 0 2px}.reference-catalog__tags strong{white-space:nowrap;font-size:.67rem}.reference-catalog__tags button{border:1px solid var(--line);background:#fff;border-radius:99px;padding:6px 12px;white-space:nowrap;font-size:.62rem;color:#34405a}.reference-catalog__tags button.is-active{background:var(--navy);color:#fff}.reference-catalog__more{margin-left:auto!important;border:0!important;font-weight:800!important}.reference-catalog__content{padding:8px 0 42px}.reference-catalog__layout{display:grid;gap:14px}.reference-filter-panel{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff;height:max-content}.reference-filter-panel__head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:9px;margin-bottom:9px}.reference-filter-panel__head strong{font-size:.78rem}.reference-filter-panel__head button,.reference-catalog__active button{border:0;background:transparent;color:#59647a;font-size:.6rem;cursor:pointer}.reference-filter-panel fieldset{border:0;padding:0;margin:0 0 10px}.reference-filter-panel legend,.reference-filter-panel summary{font-size:.67rem;font-weight:850;color:#17213a;width:100%;display:flex;justify-content:space-between;padding:7px 0;cursor:pointer;list-style:none}.reference-filter-panel label{display:flex;align-items:center;gap:6px;color:#6a7387;font-size:.62rem;margin:6px 0}.reference-filter-panel input{accent-color:var(--navy)}.reference-filter-panel details{border-top:1px solid var(--line)}.reference-filter-panel .button{font-size:.65rem;padding:9px}.reference-catalog__results{min-width:0}.reference-catalog__toolbar{display:flex;flex-direction:column;gap:9px;margin-bottom:12px}.reference-catalog__active{display:flex;align-items:center;gap:7px;min-height:30px;font-size:.62rem}.reference-catalog__active>div{display:flex;gap:6px;flex-wrap:wrap}.reference-catalog__active span{background:#f1f4f9;padding:6px 8px;border-radius:6px;text-transform:capitalize}.reference-catalog__active span b{margin-left:5px}.reference-catalog__count{display:flex;align-items:center;gap:7px;font-size:.62rem;color:#697286}.reference-catalog__count span{margin-right:auto}.reference-catalog__count button{width:30px;height:30px;border:1px solid var(--line);border-radius:6px;background:#fff;color:#697286}.reference-catalog__count button.is-active{border-color:#183c7d;color:#183c7d}.reference-catalog__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.reference-catalog__grid.is-empty{min-height:320px}.reference-catalog__pagination{display:flex;justify-content:center;align-items:center;gap:5px;margin-top:24px}.reference-catalog__pagination[hidden]{display:none}.reference-catalog__pagination button{width:31px;height:31px;border:1px solid var(--line);background:#fff;border-radius:6px}.reference-catalog__pagination button.is-active{border-color:var(--navy);color:var(--navy);font-weight:800}

@media(min-width:600px){.reference-benefits{grid-template-columns:1fr 1fr}.reference-category-grid{grid-template-columns:repeat(2,1fr)}.reference-footer__grid{grid-template-columns:repeat(2,1fr)}.reference-catalog__filterbar{grid-template-columns:repeat(2,1fr)}.reference-catalog__search{grid-column:1/-1}.reference-catalog__toolbar{flex-direction:row;justify-content:space-between;align-items:center}.reference-catalog__count span{margin-right:10px}}
@media(min-width:900px){.reference-hero{padding:26px 0 14px}.reference-hero__grid{grid-template-columns:.88fr 1.12fr;min-height:350px}.reference-hero__copy h1{font-size:3.65rem}.reference-hero__visual{min-height:350px}.reference-vase{display:block}.reference-category-grid{grid-template-columns:repeat(5,1fr)}.reference-category-grid>a{min-height:72px}.reference-featured-grid{grid-template-columns:repeat(6,1fr)}.reference-lower-grid__inner{grid-template-columns:1.25fr .9fr .75fr;align-items:start}.reference-workflow__steps{grid-template-columns:repeat(5,1fr)}.reference-workflow__steps i{display:block;position:absolute;right:-9px;top:20px;color:#aeb6c4}.reference-footer__grid{grid-template-columns:1.6fr .65fr .8fr .75fr .85fr 1.35fr}.reference-footer__bottom{flex-direction:row;justify-content:space-between}.reference-catalog__decor{display:block}.reference-catalog__filterbar{grid-template-columns:minmax(285px,2.4fr) repeat(5,minmax(95px,1fr));align-items:stretch}.reference-catalog__search{grid-column:auto}.reference-catalog__layout{grid-template-columns:190px minmax(0,1fr)}.reference-catalog__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1200px){.reference-hero__copy h1{font-size:4rem}.reference-category-grid>a{padding:11px 12px}.reference-catalog__layout{grid-template-columns:200px minmax(0,1fr)}.reference-catalog__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* ========================================================================== */
/* STEP 02 — TEMPLATE 01: WEDDING NAVY FLORAL CINEMATIC                      */
/* ========================================================================== */
.preview-page--cinematic{background:#eef3f8}.preview-toolbar{position:sticky;top:68px;z-index:42;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.preview-toolbar>.container{display:flex;flex-direction:column;gap:12px;padding:12px 0}.preview-toolbar__meta,.preview-toolbar__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.preview-toolbar__meta a{font-weight:800;color:var(--navy)}.preview-toolbar__meta strong{font-size:.9rem}.preview-toolbar__meta span{color:var(--muted);font-size:.76rem}.preview-toolbar__actions .button.is-active{background:var(--navy);color:#fff}.preview-stage--cinematic{padding:18px 10px 42px}.preview-frame--cinematic{position:relative;width:min(100%,1180px);height:calc(100vh - 135px);min-height:700px;margin:0 auto;border-radius:22px;overflow:auto;background:#06152f;box-shadow:0 24px 80px rgba(6,21,47,.22);transition:max-width .35s ease}.preview-frame--cinematic.is-mobile{max-width:430px;border:10px solid #111827;border-radius:36px}.preview-frame--cinematic.is-mobile .wnfc--preview{min-width:0}.wnfc-preview-label{position:fixed;left:18px;bottom:18px;z-index:90;padding:8px 12px;border-radius:999px;background:rgba(6,21,47,.82);color:#fff;font-size:.65rem;letter-spacing:.16em;font-weight:900;backdrop-filter:blur(8px)}

.wnfc{--wnfc-navy:#06152f;--wnfc-navy-2:#0b2c5b;--wnfc-blue:#174d8e;--wnfc-gold:#d8b06c;--wnfc-ivory:#fffaf0;--wnfc-paper:#f8f5ef;position:relative;isolation:isolate;min-height:100%;background:var(--wnfc-paper);color:#14213d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;overflow:hidden}.wnfc *{box-sizing:border-box}.wnfc h1,.wnfc h2,.wnfc h3,.wnfc p{margin-top:0}.wnfc button,.wnfc input,.wnfc select,.wnfc textarea{font:inherit}.wnfc-noise{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E")}.wnfc-stars{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}.wnfc-stars i{position:absolute;left:var(--x);top:var(--y);width:3px;height:3px;border-radius:50%;background:#fff;opacity:.4;box-shadow:0 0 10px rgba(255,255,255,.65);animation:wnfcTwinkle var(--d) ease-in-out infinite alternate}.wnfc-cover{position:fixed;inset:0;z-index:100;display:grid;place-items:center;min-height:100vh;padding:28px;background:radial-gradient(circle at 50% 35%,rgba(36,90,156,.65),transparent 38%),linear-gradient(145deg,#031025 0%,#092754 55%,#041126 100%);color:var(--wnfc-ivory);transition:opacity .8s ease,visibility .8s ease,transform 1s cubic-bezier(.2,.7,.2,1)}.wnfc--preview .wnfc-cover{position:absolute;min-height:100%}.wnfc.is-open .wnfc-cover{opacity:0;visibility:hidden;transform:scale(1.06)}.wnfc-cover__halo{position:absolute;width:min(78vw,640px);aspect-ratio:1;border:1px solid rgba(216,176,108,.28);border-radius:50%;box-shadow:0 0 0 24px rgba(216,176,108,.035),0 0 0 48px rgba(216,176,108,.02);animation:wnfcHalo 7s ease-in-out infinite}.wnfc-cover__content{position:relative;z-index:2;width:min(100%,600px);text-align:center}.wnfc-overline{font-size:.72rem;font-weight:800;letter-spacing:.42em;color:var(--wnfc-gold);margin-bottom:22px}.wnfc-cover h1{display:grid;gap:0;font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:500;font-size:clamp(3.4rem,12vw,7.2rem);line-height:.86;letter-spacing:-.05em;text-shadow:0 14px 40px rgba(0,0,0,.32)}.wnfc-cover h1 b{font-size:.42em;color:var(--wnfc-gold);font-weight:400;margin:.14em 0}.wnfc-cover__date{font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;margin:26px 0;color:#e6e9ef}.wnfc-cover__guest{width:min(100%,340px);margin:0 auto 22px;padding:15px 20px;border-top:1px solid rgba(216,176,108,.45);border-bottom:1px solid rgba(216,176,108,.45);display:grid;gap:3px}.wnfc-cover__guest small{font-size:.66rem;color:#aab7cf}.wnfc-cover__guest strong{font-family:Georgia,serif;font-size:1.05rem}.wnfc-open{border:1px solid var(--wnfc-gold);border-radius:999px;background:linear-gradient(135deg,#e4bd78,#b8843e);color:#06152f;padding:13px 24px;font-weight:900;letter-spacing:.02em;cursor:pointer;box-shadow:0 12px 34px rgba(0,0,0,.28);display:inline-flex;gap:9px;align-items:center;animation:wnfcButtonPulse 2.6s ease-in-out infinite}.wnfc-open:hover{transform:translateY(-2px);box-shadow:0 16px 44px rgba(0,0,0,.36)}.wnfc-cover__hint{display:block;margin-top:13px;color:#9fb0cc;font-size:.65rem}.wnfc-floral{position:absolute;width:min(58vw,390px);z-index:1;filter:drop-shadow(0 18px 22px rgba(0,0,0,.2));pointer-events:none}.wnfc-floral--tl{top:-28px;left:-35px}.wnfc-floral--br{right:-35px;bottom:-28px;transform:rotate(180deg)}.wnfc-content{position:relative;z-index:2;opacity:0;transform:translateY(20px);transition:opacity .8s ease .28s,transform .8s ease .28s}.wnfc.is-open .wnfc-content{opacity:1;transform:none}.wnfc--public:not(.is-open){height:100vh;overflow:hidden}.wnfc-mini-header{position:sticky;top:0;z-index:30;height:62px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;background:rgba(4,17,38,.88);color:#fff;backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}.wnfc-monogram{font-family:Georgia,serif;font-style:italic;font-size:1.4rem}.wnfc-monogram span{color:var(--wnfc-gold);margin:0 3px}.wnfc-mini-header nav{display:none;gap:18px}.wnfc-mini-header nav a{font-size:.7rem;letter-spacing:.06em;color:#c7d2e6}.wnfc-mini-header nav a:hover{color:#fff}.wnfc-hero{position:relative;min-height:calc(100vh - 62px);display:grid;place-items:center;padding:90px 22px 70px;text-align:center;color:var(--wnfc-ivory);background:radial-gradient(circle at 50% 36%,rgba(51,118,196,.45),transparent 36%),linear-gradient(145deg,#031025,#0b2c5b 58%,#041126);overflow:hidden}.wnfc-hero__glow{position:absolute;width:65vw;max-width:640px;aspect-ratio:1;border-radius:50%;border:1px solid rgba(216,176,108,.2);box-shadow:0 0 0 24px rgba(216,176,108,.025),0 0 0 50px rgba(216,176,108,.015)}.wnfc-hero__inner{position:relative;z-index:3;width:min(100%,900px)}.wnfc-hero h2{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:clamp(3rem,11vw,7.5rem);line-height:.95;font-weight:400;letter-spacing:-.055em;text-shadow:0 16px 50px rgba(0,0,0,.28)}.wnfc-hero h2 em{display:block;color:var(--wnfc-gold);font-size:.55em;font-weight:400;margin:.18em}.wnfc-hero__inner>p:not(.wnfc-overline){font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:#d5dceb}.wnfc-gold-line{width:130px;height:1px;background:linear-gradient(90deg,transparent,var(--wnfc-gold),transparent);margin:22px auto}.wnfc-countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;width:min(100%,420px);margin:28px auto}.wnfc-countdown div{border:1px solid rgba(216,176,108,.36);background:rgba(2,13,30,.32);backdrop-filter:blur(10px);border-radius:14px;padding:13px 5px}.wnfc-countdown strong{display:block;font-family:Georgia,serif;font-size:1.4rem}.wnfc-countdown span{font-size:.54rem;color:#b9c5d9}.wnfc-outline-button{display:inline-flex;border:1px solid var(--wnfc-gold);border-radius:999px;padding:12px 20px;color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.05em}.wnfc-outline-button:hover{background:var(--wnfc-gold);color:#06152f}.wnfc-section{padding:78px 18px}.wnfc-section-heading{text-align:center;width:min(100%,720px);margin:0 auto 38px}.wnfc-section-heading>span{display:block;font-size:.68rem;letter-spacing:.26em;text-transform:uppercase;font-weight:900;color:#b8843e;margin-bottom:9px}.wnfc-section-heading h2{font-family:Georgia,serif;color:#0a234a;font-size:clamp(2rem,8vw,4.1rem);line-height:1.05;letter-spacing:-.04em;margin-bottom:13px}.wnfc-section-heading p{color:#69758b;max-width:650px;margin-inline:auto}.wnfc-reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}.wnfc-reveal.is-visible{opacity:1;transform:none}.wnfc-quote{background:#f7f2e8}.wnfc-quote__card{width:min(100%,760px);margin:auto;padding:38px 24px;text-align:center;border:1px solid rgba(184,132,62,.22);border-radius:28px;background:rgba(255,255,255,.68);box-shadow:0 18px 60px rgba(62,44,20,.07)}.wnfc-quote__card>span{font-family:Georgia,serif;font-size:5rem;line-height:.5;color:var(--wnfc-gold)}.wnfc-quote__card p{font-family:Georgia,serif;font-size:clamp(1.15rem,4vw,1.75rem);font-style:italic;line-height:1.65;color:#25334c}.wnfc-quote__card small{font-weight:800;color:#b8843e}.wnfc-couple{background:#fff}.wnfc-couple__grid{display:grid;gap:24px;align-items:center;width:min(100%,920px);margin:auto}.wnfc-couple__grid article{text-align:center}.wnfc-couple__photo{width:190px;aspect-ratio:1;margin:0 auto 18px;border-radius:50% 50% 45% 45%;padding:7px;border:1px solid rgba(216,176,108,.65);box-shadow:0 16px 42px rgba(7,34,71,.12);overflow:hidden;background:#fff}.wnfc-couple__photo img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.wnfc-couple__grid article>p{font-size:.63rem;letter-spacing:.2em;text-transform:uppercase;color:#b8843e}.wnfc-couple__grid h3{font-family:Georgia,serif;font-size:2rem;color:#0a234a;margin-bottom:7px}.wnfc-couple__grid article>span{display:block;color:#6a7488;font-size:.82rem;max-width:300px;margin:auto}.wnfc-couple__amp{text-align:center;font-family:Georgia,serif;font-style:italic;color:var(--wnfc-gold);font-size:3rem}.wnfc-events{background:linear-gradient(180deg,#06152f,#0a2a56);color:#fff}.wnfc-events .wnfc-section-heading h2,.wnfc-events .wnfc-section-heading p{color:#fff}.wnfc-events .wnfc-section-heading p{opacity:.7}.wnfc-events__grid{display:grid;gap:18px;width:min(100%,860px);margin:auto}.wnfc-event-card{position:relative;text-align:center;padding:38px 24px;border:1px solid rgba(216,176,108,.32);border-radius:24px;background:rgba(255,255,255,.045);backdrop-filter:blur(8px);overflow:hidden}.wnfc-event-card:before{content:"";position:absolute;inset:10px;border:1px solid rgba(255,255,255,.07);border-radius:18px;pointer-events:none}.wnfc-event-card i{position:absolute;top:18px;right:20px;font-style:normal;color:rgba(255,255,255,.12);font-family:Georgia,serif;font-size:3.4rem}.wnfc-event-card small{font-size:.67rem;letter-spacing:.2em;text-transform:uppercase;color:var(--wnfc-gold)}.wnfc-event-card h3{font-family:Georgia,serif;font-size:1.65rem;margin:14px 0 6px}.wnfc-event-card strong{color:#f4dfb8}.wnfc-event-card p{color:#bcc8db;font-size:.83rem;line-height:1.7;margin:18px 0}.wnfc-event-card a{display:inline-flex;padding:10px 16px;border-radius:999px;border:1px solid var(--wnfc-gold);font-size:.7rem;font-weight:800}.wnfc-event-card a:hover{background:var(--wnfc-gold);color:#06152f}.wnfc-story{background:#f7f2e8}.wnfc-story__timeline{position:relative;width:min(100%,760px);margin:auto;display:grid;gap:22px}.wnfc-story__timeline:before{content:"";position:absolute;left:39px;top:15px;bottom:15px;width:1px;background:linear-gradient(var(--wnfc-gold),rgba(216,176,108,.2))}.wnfc-story__timeline article{position:relative;display:grid;grid-template-columns:78px 1fr;gap:18px}.wnfc-story__timeline time{position:relative;z-index:2;width:78px;height:78px;border-radius:50%;display:grid;place-items:center;background:#06152f;color:var(--wnfc-gold);font-family:Georgia,serif;font-size:1rem;border:5px solid #f7f2e8}.wnfc-story__timeline article>div{padding:18px 20px;border-radius:18px;background:#fff;border:1px solid #e8dfcf;box-shadow:0 12px 30px rgba(45,32,12,.05)}.wnfc-story__timeline h3{font-family:Georgia,serif;color:#0a234a;margin-bottom:7px}.wnfc-story__timeline p{color:#6d7482;font-size:.84rem;margin:0}.wnfc-gallery{background:#fff}.wnfc-gallery__grid{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:190px;gap:10px;width:min(100%,980px);margin:auto}.wnfc-gallery__item{position:relative;border:0;border-radius:16px;overflow:hidden;padding:0;background:#06152f;cursor:pointer}.wnfc-gallery__item img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease,filter .65s ease}.wnfc-gallery__item span{position:absolute;inset:auto 10px 10px;padding:7px 10px;border-radius:999px;background:rgba(6,21,47,.78);color:#fff;font-size:.62rem;opacity:0;transform:translateY(8px);transition:.3s ease}.wnfc-gallery__item:hover img{transform:scale(1.06);filter:saturate(1.08)}.wnfc-gallery__item:hover span{opacity:1;transform:none}.wnfc-gallery__item--1,.wnfc-gallery__item--4{grid-row:span 2}.wnfc-location{padding-inline:18px;background:linear-gradient(135deg,#e9eef5,#f9f5ed)}.wnfc-location__card{width:min(100%,780px);margin:auto;padding:52px 24px;border-radius:28px;text-align:center;color:#fff;background:radial-gradient(circle at 50% 0,rgba(52,116,190,.55),transparent 48%),linear-gradient(145deg,#06152f,#0b2c5b);box-shadow:0 24px 60px rgba(6,21,47,.2)}.wnfc-location__card>span,.wnfc-gift__card>span{font-size:.67rem;letter-spacing:.24em;text-transform:uppercase;color:var(--wnfc-gold);font-weight:900}.wnfc-location__card h2,.wnfc-gift__card h2{font-family:Georgia,serif;font-size:clamp(2rem,7vw,3.5rem);margin:12px 0}.wnfc-location__card p{color:#c7d1e1}.wnfc-location__card a{display:inline-flex;margin-top:10px;padding:12px 18px;border-radius:999px;background:var(--wnfc-gold);color:#06152f;font-weight:900;font-size:.75rem}.wnfc-rsvp{background:#fff}.wnfc-form{width:min(100%,650px);margin:auto;display:grid;gap:14px;padding:22px;border:1px solid #e4e8ef;border-radius:22px;background:#fff;box-shadow:0 16px 48px rgba(7,34,71,.07)}.wnfc-form label{display:grid;gap:6px;font-size:.72rem;font-weight:800;color:#25334c}.wnfc-form input,.wnfc-form select,.wnfc-form textarea{width:100%;border:1px solid #dfe4ec;border-radius:12px;padding:12px 13px;background:#fbfcfe;outline:none;color:#1e2a40}.wnfc-form input:focus,.wnfc-form select:focus,.wnfc-form textarea:focus{border-color:#8eaed4;box-shadow:0 0 0 3px rgba(36,90,156,.1)}.wnfc-form button{border:0;border-radius:999px;padding:13px 18px;background:linear-gradient(135deg,#06152f,#174d8e);color:#fff;font-weight:900;cursor:pointer}.wnfc-gift{background:#f7f2e8}.wnfc-gift__card{width:min(100%,760px);margin:auto;text-align:center;padding:42px 22px;border-radius:28px;background:#fff;border:1px solid #e8dfcf}.wnfc-gift__card p{color:#6a7488;max-width:600px;margin-inline:auto}.wnfc-gift__card>div{display:flex;flex-direction:column;gap:10px;align-items:center;margin-top:20px;padding:16px;border-radius:16px;background:#f7f2e8}.wnfc-gift__card strong{color:#0a234a}.wnfc-gift__card button{border:0;border-radius:999px;padding:9px 16px;background:#06152f;color:#fff;font-weight:800;cursor:pointer}.wnfc-wishes{background:#fff}.wnfc-wishes__grid{display:grid;gap:20px;width:min(100%,940px);margin:auto}.wnfc-wish-list{display:grid;gap:10px}.wnfc-wish-list article{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:14px;border:1px solid #e5e9f0;border-radius:16px;background:#fbfcfe}.wnfc-wish-list article>div{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#06152f,#174d8e);color:#fff;font-weight:900}.wnfc-wish-list p{margin:0}.wnfc-wish-list p strong,.wnfc-wish-list p span{display:block}.wnfc-wish-list p span{font-size:.8rem;color:#6d7689;margin-top:3px}.wnfc-closing{position:relative;min-height:520px;padding:100px 24px;display:grid;place-items:center;text-align:center;color:#fff;background:radial-gradient(circle at 50% 35%,rgba(36,90,156,.5),transparent 42%),linear-gradient(145deg,#031025,#0b2c5b 58%,#041126);overflow:hidden}.wnfc-closing>div{position:relative;z-index:3;width:min(100%,650px)}.wnfc-closing p{color:#c7d1e1}.wnfc-closing h2{font-family:Georgia,serif;font-style:italic;font-size:clamp(3rem,11vw,6rem);font-weight:400;line-height:.95}.wnfc-closing h2 em{display:block;color:var(--wnfc-gold);font-size:.55em;margin:.12em}.wnfc-closing small{color:#aebbd0}.wnfc-floating-actions{position:fixed;z-index:80;right:14px;bottom:16px;display:grid;gap:9px}.wnfc--preview .wnfc-floating-actions{position:absolute}.wnfc-floating-actions button{width:44px;height:44px;border-radius:50%;border:1px solid rgba(216,176,108,.5);background:rgba(6,21,47,.9);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 24px rgba(0,0,0,.2);backdrop-filter:blur(8px)}.wnfc.is-music-playing [data-music-toggle]{background:var(--wnfc-gold);color:#06152f}.wnfc-lightbox{position:fixed;inset:0;z-index:120;background:rgba(2,8,20,.92);display:grid;place-items:center;padding:24px;opacity:0;transition:opacity .22s ease}.wnfc--preview .wnfc-lightbox{position:absolute}.wnfc-lightbox.is-visible{opacity:1}.wnfc-lightbox[hidden]{display:none}.wnfc-lightbox img{max-width:min(95vw,850px);max-height:88vh;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.45)}.wnfc-lightbox button{position:absolute;top:18px;right:18px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff;font-size:1.6rem;cursor:pointer}.wnfc--preview .wnfc-lightbox img{max-width:90%;max-height:88%}

/* Login customer/admin */
.login-page{min-height:100vh;display:grid;background:#f7f9fc}.login-showcase{position:relative;display:none;overflow:hidden;color:#fff;background:radial-gradient(circle at 70% 30%,rgba(36,90,156,.6),transparent 38%),linear-gradient(145deg,#031025,#0b2c5b 62%,#041126);padding:42px}.login-brand{display:flex;align-items:center;gap:14px;position:relative;z-index:3}.login-brand .brand-logo{width:210px}.login-brand>span,.login-panel__mobile-brand>span{font-size:.72rem;letter-spacing:.2em;font-weight:900;color:#22d3ee;border-left:1px solid rgba(255,255,255,.25);padding-left:12px}.login-showcase__content{position:relative;z-index:3;align-self:center;width:min(100%,560px)}.login-showcase__content>span{font-size:.7rem;letter-spacing:.3em;color:#d8b06c;font-weight:900}.login-showcase__content h1{font-family:Georgia,serif;font-size:clamp(3rem,6vw,5.5rem);line-height:1.02;letter-spacing:-.045em;margin:18px 0}.login-showcase__content p{color:#c7d1e1;max-width:520px;font-size:1rem}.login-showcase__features{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px}.login-showcase__features article{padding:14px;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:rgba(255,255,255,.05)}.login-showcase__features b,.login-showcase__features span{display:block}.login-showcase__features b{color:#d8b06c}.login-showcase__features span{font-size:.72rem;margin-top:5px}.login-showcase__floral{position:absolute;width:480px;height:480px;right:-140px;bottom:-140px;border-radius:50%;border:1px solid rgba(216,176,108,.18);box-shadow:0 0 0 40px rgba(216,176,108,.025),0 0 0 80px rgba(216,176,108,.015)}.login-panel{display:grid;place-items:center;padding:28px 18px}.login-panel__box{width:min(100%,460px);padding:26px 0}.login-panel__mobile-brand{display:flex;align-items:center;gap:10px;margin-bottom:46px}.login-panel__mobile-brand .brand-logo{width:170px}.login-panel__box h2{font-size:2rem;letter-spacing:-.035em;margin-bottom:7px;color:#0b1530}.login-panel__box>p{color:#68748a}.login-role-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:14px;background:#edf1f7;margin:24px 0}.login-role-tabs button{border:0;border-radius:11px;padding:11px;background:transparent;font-weight:850;color:#647085;cursor:pointer}.login-role-tabs button.is-active{background:#fff;color:#0b1530;box-shadow:0 5px 18px rgba(11,21,48,.08)}.login-form{display:grid;gap:15px}.login-form>label{display:grid;gap:7px;font-size:.76rem;font-weight:800;color:#25334c}.login-form input{width:100%;border:1px solid #dfe5ee;border-radius:13px;padding:13px 14px;outline:none;background:#fff}.login-form input:focus{border-color:#6d94c7;box-shadow:0 0 0 3px rgba(37,99,235,.1)}.login-password{position:relative}.login-password button{position:absolute;right:7px;top:6px;width:38px;height:38px;border:0;background:transparent;color:#65708a;cursor:pointer}.login-options{display:flex;align-items:center;justify-content:space-between;font-size:.7rem}.login-options label{display:flex;align-items:center;gap:6px}.login-options a,.login-register a{color:#2563eb;font-weight:800}.login-divider{display:flex;align-items:center;gap:10px;margin:22px 0;color:#8791a3;font-size:.68rem}.login-divider:before,.login-divider:after{content:"";height:1px;flex:1;background:#e1e6ee}.login-register{text-align:center;font-size:.72rem;margin-top:20px!important}.login-panel__mobile-brand>span{color:#2563eb;border-color:#dce2eb}

@keyframes wnfcTwinkle{to{opacity:1;transform:scale(1.7)}}@keyframes wnfcHalo{50%{transform:scale(1.035);opacity:.78}}@keyframes wnfcButtonPulse{50%{box-shadow:0 14px 38px rgba(216,176,108,.28);transform:translateY(-2px)}}
@media (prefers-reduced-motion:reduce){.wnfc *{animation:none!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.wnfc-reveal{opacity:1;transform:none}}
@media(min-width:700px){.preview-toolbar>.container{flex-direction:row;justify-content:space-between}.wnfc-mini-header{padding-inline:34px}.wnfc-mini-header nav{display:flex}.wnfc-section{padding:100px 30px}.wnfc-couple__grid{grid-template-columns:1fr auto 1fr}.wnfc-events__grid{grid-template-columns:1fr 1fr}.wnfc-gallery__grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:220px}.wnfc-gallery__item--1{grid-column:span 2}.wnfc-gallery__item--4{grid-column:span 2}.wnfc-form{grid-template-columns:1fr 1fr}.wnfc-form label:last-of-type,.wnfc-form button,.wnfc-wishes .wnfc-form label{grid-column:1/-1}.wnfc-gift__card>div{flex-direction:row;justify-content:space-between}.wnfc-wishes__grid{grid-template-columns:1fr 1fr}.wnfc--preview .wnfc-cover__content{transform:scale(.92)}}
@media(min-width:980px){.login-page{grid-template-columns:1.15fr .85fr}.login-showcase{display:grid;grid-template-rows:auto 1fr}.login-panel{padding:50px}.login-panel__mobile-brand{display:none}.wnfc-cover__date{font-size:.9rem}.wnfc-couple__photo{width:240px}.wnfc-event-card{padding:48px 32px}.wnfc-story__timeline article{grid-template-columns:90px 1fr}.wnfc-story__timeline:before{left:44px}.wnfc-story__timeline time{width:90px;height:90px}.wnfc-floating-actions{right:24px;bottom:24px}.wnfc-floating-actions button{width:50px;height:50px}}

/* =========================================================
   NEXORA INVITE — STEP 03A
   Active dashboard navigation + hidden internal scrollbars
   Scroll remains available by wheel, touch, trackpad, and keys.
   ========================================================= */
.dashboard-sidebar,
.dashboard-main,
.dashboard-content,
.editor-steps,
.editor-panel,
.live-preview,
.review-queue,
.admin-detail,
.table-wrap,
.clean-scroll,
.preview-frame--cinematic,
.customer-preview-frame,
.customer-preview-frame iframe,
.wnfc,
.wnfc-lightbox,
.tag-row {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.dashboard-sidebar::-webkit-scrollbar,
.dashboard-main::-webkit-scrollbar,
.dashboard-content::-webkit-scrollbar,
.editor-steps::-webkit-scrollbar,
.editor-panel::-webkit-scrollbar,
.live-preview::-webkit-scrollbar,
.review-queue::-webkit-scrollbar,
.admin-detail::-webkit-scrollbar,
.table-wrap::-webkit-scrollbar,
.clean-scroll::-webkit-scrollbar,
.preview-frame--cinematic::-webkit-scrollbar,
.customer-preview-frame::-webkit-scrollbar,
.customer-preview-frame iframe::-webkit-scrollbar,
.wnfc::-webkit-scrollbar,
.wnfc-lightbox::-webkit-scrollbar,
.tag-row::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}
.dashboard-sidebar nav a {
  cursor: pointer;
  position: relative;
  overflow: hidden;
}
.dashboard-sidebar nav a::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  border-radius: 0 4px 4px 0;
  background: transparent;
  transition: .2s ease;
}
.dashboard-sidebar nav a:hover {
  background: #f2f6fd;
  color: var(--navy);
  transform: translateX(2px);
}
.dashboard-sidebar nav a.is-active,
.dashboard-sidebar nav a[aria-current="page"] {
  background: linear-gradient(135deg, var(--navy), #123774);
  color: #fff;
  box-shadow: 0 10px 24px rgba(11, 21, 48, .15);
}
.dashboard-sidebar nav a.is-active::before,
.dashboard-sidebar nav a[aria-current="page"]::before {
  background: var(--cyan);
}
.dashboard-sidebar nav a.is-active b,
.dashboard-sidebar nav a[aria-current="page"] b {
  background: rgba(255,255,255,.18);
  color: #fff;
}
.customer-overview-grid,
.customer-module-layout,
.customer-status-grid,
.settings-grid {
  display: grid;
  gap: 16px;
  margin-top: 16px;
}
.customer-main-card,
.module-card,
.customer-side-stack > article {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 20px;
  padding: 18px;
}
.customer-main-card {
  display: grid;
  gap: 20px;
  align-items: center;
}
.customer-template-cover {
  border-radius: 18px;
  overflow: hidden;
  background: var(--soft);
  box-shadow: 0 16px 40px rgba(11,21,48,.1);
}
.customer-template-cover img {
  width: 100%;
  aspect-ratio: 1.45/1;
  object-fit: cover;
}
.customer-main-card__content h2,
.module-card h2 {
  margin-bottom: 8px;
  color: var(--navy);
}
.customer-main-card__content p,
.muted-copy,
.module-empty p {
  color: var(--muted);
}
.customer-quick-links,
.preview-device-actions,
.payment-summary {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}
.customer-side-stack {
  display: grid;
  gap: 16px;
}
.customer-side-stack blockquote,
.customer-status-grid blockquote {
  margin: 0;
  padding: 14px;
  border-left: 4px solid var(--warning);
  border-radius: 0 12px 12px 0;
  background: #fff8ea;
}
.customer-side-stack blockquote p,
.customer-status-grid blockquote p {
  margin: 0 0 6px;
}
.compact-details {
  display: grid;
  gap: 0;
  margin: 12px 0 18px;
}
.compact-details div {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  border-bottom: 1px solid var(--line);
  padding: 11px 0;
}
.compact-details dt {
  color: var(--muted);
  font-size: .76rem;
}
.compact-details dd {
  margin: 0;
  text-align: right;
  font-size: .8rem;
  font-weight: 800;
  color: var(--navy);
}
.form-heading--sub {
  margin-top: 8px;
}
.form-heading--sub > span {
  background: #eef4ff;
  color: var(--blue);
}
.customer-gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}
.customer-gallery-grid figure {
  margin: 0;
  border: 1px solid var(--line);
  border-radius: 16px;
  overflow: hidden;
  background: var(--soft);
}
.customer-gallery-grid figure img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
}
.customer-gallery-grid figcaption {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
  padding: 9px 10px;
  font-size: .72rem;
}
.customer-gallery-grid figcaption span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.customer-gallery-grid figcaption button,
.copy-link {
  border: 0;
  background: transparent;
  color: var(--blue);
  cursor: pointer;
  font-weight: 850;
}
.module-empty {
  grid-column: 1/-1;
  min-height: 190px;
  border: 1px dashed #bbc7d8;
  border-radius: 16px;
  display: grid;
  place-content: center;
  text-align: center;
  padding: 24px;
}
.module-card--preview .invitation-surface {
  min-height: 390px;
  border-radius: 16px;
}
.inline-form {
  display: grid;
  gap: 12px;
  margin: 18px 0;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #f8faff;
}
.inline-form label,
.settings-grid label {
  display: grid;
  gap: 6px;
  color: #34405a;
  font-size: .78rem;
  font-weight: 750;
}
.inline-form input,
.inline-form select,
.settings-grid input,
.settings-grid select {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 11px;
  padding: 11px;
  background: #fff;
  outline: none;
}
.guest-table,
.admin-directory-table {
  width: 100%;
  min-width: 780px;
  border-collapse: collapse;
}
.guest-table th,
.guest-table td,
.admin-directory-table th,
.admin-directory-table td {
  padding: 12px 10px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  font-size: .76rem;
}
.guest-table th,
.admin-directory-table th {
  color: var(--muted);
}
.preview-module {
  min-height: calc(100vh - 190px);
}
.customer-preview-frame {
  width: 100%;
  height: calc(100vh - 285px);
  min-height: 620px;
  margin: 0 auto;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #06152f;
  box-shadow: 0 24px 60px rgba(6,21,47,.14);
  transition: max-width .3s ease, border-radius .3s ease, border-width .3s ease;
}
.customer-preview-frame.is-mobile {
  max-width: 430px;
  border: 10px solid #111827;
  border-radius: 36px;
}
.customer-preview-frame.is-desktop {
  max-width: 1180px;
  border-width: 1px;
}
.customer-preview-frame iframe {
  width: 100%;
  height: 100%;
  border: 0;
  background: #06152f;
}
.preview-device-actions .is-active {
  background: var(--navy);
  border-color: var(--navy);
  color: #fff;
}
.customer-status-timeline {
  position: relative;
  list-style: none;
  padding: 8px 0;
  margin: 18px 0 0;
  display: grid;
  gap: 20px;
}
.customer-status-timeline::before {
  content: "";
  position: absolute;
  left: 7px;
  top: 18px;
  bottom: 18px;
  width: 2px;
  background: var(--line);
}
.customer-status-timeline li {
  position: relative;
  display: grid;
  grid-template-columns: 16px 1fr;
  gap: 14px;
  opacity: .45;
}
.customer-status-timeline li > span {
  position: relative;
  z-index: 2;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #d8deea;
  border: 4px solid #fff;
  box-shadow: 0 0 0 2px #d8deea;
}
.customer-status-timeline li.is-current {
  opacity: 1;
}
.customer-status-timeline li.is-current > span {
  background: var(--blue);
  box-shadow: 0 0 0 2px var(--blue);
}
.customer-status-timeline p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: .78rem;
}
.admin-workspace--review {
  margin-top: 0;
}
.admin-template-grid {
  display: grid;
  gap: 16px;
  margin-top: 16px;
}
.admin-template-grid article {
  display: grid;
  gap: 16px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 18px;
}
.admin-template-grid article > img {
  width: 100%;
  aspect-ratio: 1.7/1;
  object-fit: cover;
  border-radius: 14px;
}
.admin-template-grid article h3 {
  margin: 10px 0 3px;
}
.admin-template-grid article p {
  color: var(--muted);
  font-size: .8rem;
}
.admin-template-grid article > div > div {
  display: flex;
  gap: 8px;
  margin-top: 14px;
}
.payment-summary span {
  padding: 7px 10px;
  border-radius: 999px;
  background: var(--soft);
  color: var(--navy);
  font-size: .72rem;
  font-weight: 800;
}
.settings-grid .module-card {
  display: grid;
  align-content: start;
  gap: 14px;
}
.toggle-row {
  grid-template-columns: auto 1fr !important;
  align-items: center;
}
.toggle-row input {
  width: auto;
}
@media (min-width: 720px) {
  .customer-main-card {
    grid-template-columns: minmax(250px, .75fr) minmax(0, 1.25fr);
  }
  .customer-gallery-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .inline-form {
    grid-template-columns: 1.4fr .8fr auto;
    align-items: end;
  }
  .admin-template-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .admin-template-grid article {
    grid-template-columns: minmax(180px, .72fr) minmax(0, 1.28fr);
  }
}
@media (min-width: 900px) {
  .customer-overview-grid {
    grid-template-columns: minmax(0, 1.5fr) minmax(300px, .55fr);
  }
  .customer-module-layout,
  .customer-status-grid,
  .settings-grid {
    grid-template-columns: minmax(0, 1.45fr) minmax(320px, .55fr);
  }
}

/* ========================================================================== 
   STEP 04 — Template 02: Wedding Ivory Editorial Motion
   Shared wedding data contract; visually independent from Template 01.
   ========================================================================== */
:root{
  --wie-ivory:#f5efe5;
  --wie-paper:#fffdf8;
  --wie-ink:#171716;
  --wie-muted:#746f67;
  --wie-champagne:#b89563;
  --wie-sage:#899184;
  --wie-line:#d9d0c3;
}
.wie{position:relative;min-height:100vh;background:var(--wie-paper);color:var(--wie-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden;isolation:isolate}.wie *{box-sizing:border-box}.wie img{display:block;max-width:100%}.wie button,.wie input,.wie select,.wie textarea{font:inherit}.wie-content{position:relative;background:var(--wie-paper)}.wie-section{padding:84px 20px}.wie-cover{position:fixed;inset:0;z-index:150;display:grid;grid-template-rows:46% 54%;background:var(--wie-ivory);overflow:hidden;transition:visibility .1s linear .95s}.wie-cover__grain{position:absolute;inset:0;z-index:3;pointer-events:none;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.17'/%3E%3C/svg%3E")}.wie-cover__photo{position:relative;overflow:hidden}.wie-cover__photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,12,11,.05),rgba(12,12,11,.18))}.wie-cover__photo img{width:100%;height:100%;object-fit:cover;filter:sepia(.12) saturate(.78) contrast(.94);transform:scale(1.06);animation:wieCoverZoom 12s ease-in-out infinite alternate}.wie-cover__copy{position:relative;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px 22px 34px;background:var(--wie-paper)}.wie-cover__issue{position:absolute;top:14px;left:18px;right:18px;display:flex;justify-content:space-between;align-items:center;font-size:.56rem;letter-spacing:.18em}.wie-cover__issue b{font-size:.56rem}.wie-rule{display:flex;align-items:center;justify-content:center;gap:10px;width:min(100%,420px);margin:8px auto 14px}.wie-rule i{height:1px;flex:1;background:var(--wie-ink)}.wie-rule span{font-size:.56rem;font-weight:800;letter-spacing:.22em;white-space:nowrap}.wie-cover h1{display:grid;gap:0;margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.8rem,13vw,6.4rem);line-height:.84;font-weight:400;letter-spacing:-.065em}.wie-cover h1 em{font-size:.4em;color:var(--wie-champagne);font-weight:400;margin:.18em 0}.wie-cover__copy>p{margin:20px 0 12px;font-size:.7rem;text-transform:uppercase;letter-spacing:.16em}.wie-cover__guest{display:grid;gap:2px;margin-bottom:17px}.wie-cover__guest small{font-size:.62rem;color:var(--wie-muted)}.wie-cover__guest strong{font-family:Georgia,serif;font-size:1rem;font-weight:400}.wie-open{display:flex;align-items:center;gap:18px;border:0;background:var(--wie-ink);color:#fff;padding:13px 18px 13px 22px;cursor:pointer;font-size:.66rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.wie-open i{font-style:normal;font-size:1.1rem}.wie-cover__hint{margin-top:10px;color:var(--wie-muted);font-size:.58rem}.wie-cover__curtain{position:absolute;z-index:8;top:0;bottom:0;width:50%;background:var(--wie-ivory);pointer-events:none;transform:scaleX(0)}.wie-cover__curtain--left{left:0;transform-origin:left}.wie-cover__curtain--right{right:0;transform-origin:right}.wie.is-open .wie-cover__curtain{animation:wieCurtain .85s cubic-bezier(.65,0,.35,1) both}.wie.is-open .wie-cover{opacity:0;visibility:hidden;transition:opacity .75s ease .12s,visibility .01s linear .94s}.wie.is-open .wie-cover__photo{transform:translateY(-8%);transition:transform .9s cubic-bezier(.65,0,.35,1)}.wie.is-open .wie-cover__copy{transform:translateY(8%);transition:transform .9s cubic-bezier(.65,0,.35,1)}
.wie-nav{position:sticky;top:0;z-index:40;height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid rgba(23,23,22,.12);background:rgba(255,253,248,.88);backdrop-filter:blur(16px)}.wie-nav__mark{font-family:Georgia,serif;font-size:1.05rem;font-weight:700}.wie-nav__mark span{color:var(--wie-champagne);margin:0 3px}.wie-nav nav{display:none;gap:20px}.wie-nav nav a{position:relative;font-size:.64rem;text-transform:uppercase;letter-spacing:.12em}.wie-nav nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:var(--wie-ink);transition:.25s ease}.wie-nav nav a:hover:after{right:0}.wie-nav>span{font-size:.57rem;letter-spacing:.13em}.wie-hero{min-height:calc(100vh - 62px);display:grid;align-items:stretch;background:var(--wie-paper)}.wie-hero__copy{display:flex;flex-direction:column;justify-content:center;padding:68px 24px 42px}.wie-kicker,.wie-heading>span,.wie-countdown-copy>span,.wie-gift__card>span{font-size:.62rem;font-weight:850;letter-spacing:.24em;text-transform:uppercase;color:var(--wie-champagne)}.wie-hero h2{display:grid;margin:20px 0 24px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(3.5rem,17vw,8.5rem);font-weight:400;line-height:.76;letter-spacing:-.08em}.wie-hero h2 em{font-size:.38em;color:var(--wie-champagne);margin:.35em 0 .25em .7em}.wie-hero__copy>p{max-width:520px;color:var(--wie-muted);font-family:Georgia,serif;font-size:1.05rem;line-height:1.75}.wie-hero__copy>a{width:max-content;margin-top:17px;border-bottom:1px solid var(--wie-ink);padding-bottom:6px;font-size:.72rem;font-weight:750}.wie-hero__copy>a span{margin-left:12px}.wie-hero__visual{position:relative;min-height:560px;background:var(--wie-ivory);overflow:hidden}.wie-hero__image{position:absolute;inset:30px 26px 80px;overflow:hidden}.wie-hero__image:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.66);margin:12px}.wie-hero__image img{width:100%;height:100%;object-fit:cover;filter:sepia(.12) saturate(.75) contrast(.96);transition:transform 1.1s ease}.wie-hero__visual:hover .wie-hero__image img{transform:scale(1.035)}.wie-date-block{position:absolute;left:10px;bottom:28px;display:grid;grid-template-columns:auto auto;align-items:center;gap:0 10px;background:var(--wie-ink);color:#fff;padding:14px 17px}.wie-date-block strong{grid-row:1/3;font-family:Georgia,serif;font-size:2.8rem;line-height:.8}.wie-date-block span{font-size:.62rem;letter-spacing:.14em}.wie-date-block small{color:#bfb8ae;font-size:.56rem}.wie-hero__visual>p{position:absolute;right:12px;bottom:20px;margin:0;font-family:Georgia,serif;font-size:1rem;font-style:italic;text-align:right}.wie-countdown-section{display:grid;gap:28px;padding:56px 20px;background:var(--wie-ink);color:#fff}.wie-countdown-copy h2{font-family:Georgia,serif;font-size:clamp(2rem,9vw,4rem);font-weight:400;line-height:1.05;margin:12px 0 0}.wie-countdown{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.18);border-left:1px solid rgba(255,255,255,.18)}.wie-countdown div{display:grid;place-items:center;min-height:90px;border-right:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.wie-countdown strong{font-family:Georgia,serif;font-size:1.65rem;font-weight:400}.wie-countdown span{font-size:.5rem;text-transform:uppercase;letter-spacing:.14em;color:#aaa69e}.wie-quote{position:relative;display:grid;place-items:center;min-height:520px;background:var(--wie-ivory);overflow:hidden}.wie-quote__number{position:absolute;left:-18px;top:-40px;font-family:Georgia,serif;font-size:17rem;line-height:1;color:rgba(184,149,99,.11)}.wie-quote blockquote{position:relative;width:min(100%,720px);margin:0;text-align:center}.wie-quote blockquote>span{font-family:Georgia,serif;font-size:5rem;color:var(--wie-champagne);line-height:.5}.wie-quote blockquote p{font-family:Georgia,serif;font-size:clamp(1.55rem,6vw,3rem);line-height:1.35}.wie-quote blockquote small{font-size:.62rem;text-transform:uppercase;letter-spacing:.14em;color:var(--wie-muted)}.wie-heading{margin-bottom:40px}.wie-heading h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.8rem,12vw,6.5rem);font-weight:400;line-height:.88;letter-spacing:-.065em;margin:14px 0}.wie-heading p{max-width:560px;color:var(--wie-muted);line-height:1.75}.wie-heading--light h2{color:#fff}.wie-heading--light p{color:#b7b1a8}.wie-couple{background:var(--wie-paper)}.wie-couple__grid{display:grid;gap:36px}.wie-couple-card{position:relative}.wie-couple-card>div{position:relative;overflow:hidden;aspect-ratio:4/5;margin-bottom:20px;background:var(--wie-ivory)}.wie-couple-card>div:after{content:"";position:absolute;inset:10px;border:1px solid rgba(255,255,255,.7)}.wie-couple-card img{width:100%;height:100%;object-fit:cover;filter:sepia(.15) saturate(.72);transition:transform .8s ease}.wie-couple-card:hover img{transform:scale(1.035)}.wie-couple-card small{font-size:.57rem;letter-spacing:.22em}.wie-couple-card h3{font-family:Georgia,serif;font-size:2.1rem;font-weight:400;margin:8px 0 10px}.wie-couple-card p{color:var(--wie-muted);font-size:.78rem;line-height:1.7}.wie-couple-card>b{position:absolute;right:0;bottom:-4px;font-family:Georgia,serif;font-size:4.6rem;color:rgba(184,149,99,.16);font-weight:400}.wie-couple__and{display:none}.wie-events{background:#1a1a18;color:#fff}.wie-events__grid{display:grid;gap:16px}.wie-event-card{border:1px solid rgba(255,255,255,.18);padding:26px 22px;background:rgba(255,255,255,.025);transition:.3s ease}.wie-event-card:hover{transform:translateY(-5px);border-color:var(--wie-champagne)}.wie-event-card header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.16);padding-bottom:16px}.wie-event-card header span{font-family:Georgia,serif;color:var(--wie-champagne);font-size:2rem}.wie-event-card header small{font-size:.57rem;letter-spacing:.2em}.wie-event-card h3{font-family:Georgia,serif;font-size:2rem;font-weight:400;margin:28px 0 10px}.wie-event-card>strong{font-size:.73rem;letter-spacing:.11em;color:#ddd1c0}.wie-event-card p{color:#aaa69e;font-size:.78rem;line-height:1.75;margin:20px 0}.wie-event-card a{display:inline-flex;border-bottom:1px solid var(--wie-champagne);padding-bottom:5px;color:#fff;font-size:.68rem}.wie-story{background:var(--wie-ivory)}.wie-story__chapters{display:grid;border-top:1px solid var(--wie-line)}.wie-story__chapters article{position:relative;padding:32px 0;border-bottom:1px solid var(--wie-line)}.wie-story__chapters article>span{font-size:.54rem;letter-spacing:.19em;color:var(--wie-champagne)}.wie-story__chapters h3{font-family:Georgia,serif;font-size:2rem;font-weight:400;margin:12px 0}.wie-story__chapters p{max-width:580px;color:var(--wie-muted);font-size:.8rem;line-height:1.7}.wie-story__chapters b{position:absolute;right:0;top:28px;font-family:Georgia,serif;font-size:2.5rem;color:rgba(23,23,22,.16);font-weight:400}.wie-gallery{background:var(--wie-paper)}.wie-gallery__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.wie-gallery__item{position:relative;border:0;padding:0;overflow:hidden;background:var(--wie-ivory);cursor:pointer;min-height:220px}.wie-gallery__item img{width:100%;height:100%;object-fit:cover;filter:sepia(.12) saturate(.78);transition:transform .75s ease,filter .75s ease}.wie-gallery__item span{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;padding:12px;background:linear-gradient(transparent,rgba(15,15,14,.65));color:#fff;font-size:.58rem;text-transform:uppercase;letter-spacing:.12em}.wie-gallery__item span b{font-family:Georgia,serif;font-size:1.2rem}.wie-gallery__item:hover img{transform:scale(1.05);filter:sepia(0) saturate(.92)}.wie-gallery__item--1,.wie-gallery__item--4{grid-row:span 2}.wie-location{background:var(--wie-ivory)}.wie-location__ticket{position:relative;display:grid;gap:24px;padding:30px 24px;border:1px solid var(--wie-ink);background:var(--wie-paper);box-shadow:12px 12px 0 var(--wie-champagne)}.wie-location__ticket:before,.wie-location__ticket:after{content:"";position:absolute;top:50%;width:22px;height:44px;background:var(--wie-ivory);border:1px solid var(--wie-ink);border-radius:50%}.wie-location__ticket:before{left:-12px;border-left:0}.wie-location__ticket:after{right:-12px;border-right:0}.wie-location__date{display:flex;align-items:center;gap:12px}.wie-location__date strong{font-family:Georgia,serif;font-size:4rem;line-height:.8}.wie-location__date span{font-size:.62rem;letter-spacing:.14em}.wie-location__ticket small{font-size:.56rem;letter-spacing:.2em;color:var(--wie-champagne)}.wie-location__ticket h2{font-family:Georgia,serif;font-size:clamp(2rem,8vw,4rem);font-weight:400;margin:8px 0}.wie-location__ticket p{color:var(--wie-muted)}.wie-location__ticket>a{width:max-content;border-bottom:1px solid var(--wie-ink);padding-bottom:5px;font-size:.68rem;font-weight:750}.wie-rsvp{background:var(--wie-paper)}.wie-form{display:grid;gap:16px;width:min(100%,720px);margin:auto;border-top:1px solid var(--wie-ink);padding-top:24px}.wie-form label{display:grid;gap:8px}.wie-form label>span{font-size:.58rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.wie-form input,.wie-form select,.wie-form textarea{width:100%;border:0;border-bottom:1px solid var(--wie-line);border-radius:0;background:transparent;padding:12px 2px;color:var(--wie-ink);outline:none}.wie-form input:focus,.wie-form select:focus,.wie-form textarea:focus{border-color:var(--wie-ink)}.wie-form button{border:0;background:var(--wie-ink);color:#fff;padding:14px 18px;cursor:pointer;text-align:left;font-size:.68rem;font-weight:800;letter-spacing:.08em}.wie-gift{background:#1a1a18;color:#fff}.wie-gift__card{width:min(100%,820px);margin:auto}.wie-gift__card h2{font-family:Georgia,serif;font-size:clamp(2.8rem,10vw,5.8rem);font-weight:400;line-height:.94;margin:16px 0 22px}.wie-gift__card>p{max-width:580px;color:#aaa69e;line-height:1.8}.wie-gift__card>div{display:grid;gap:12px;margin-top:30px;padding:20px;border:1px solid rgba(255,255,255,.18)}.wie-gift__card strong{font-family:Georgia,serif;font-size:1.1rem;font-weight:400}.wie-gift__card button{width:max-content;border:0;border-bottom:1px solid var(--wie-champagne);background:transparent;color:#fff;padding:0 0 5px;cursor:pointer;font-size:.66rem}.wie-wishes{background:var(--wie-ivory)}.wie-wishes__grid{display:grid;gap:36px}.wie-wish-list{display:grid;border-top:1px solid var(--wie-line)}.wie-wish-list article{display:grid;grid-template-columns:44px 1fr;gap:15px;padding:18px 0;border-bottom:1px solid var(--wie-line)}.wie-wish-list article>span{font-family:Georgia,serif;color:var(--wie-champagne);font-size:1.1rem}.wie-wish-list strong{font-family:Georgia,serif;font-size:1.05rem;font-weight:400}.wie-wish-list p{margin:4px 0 0;color:var(--wie-muted);font-size:.78rem;line-height:1.6}.wie-closing{display:grid;min-height:700px;background:var(--wie-paper)}.wie-closing__photo{min-height:430px;overflow:hidden}.wie-closing__photo img{width:100%;height:100%;object-fit:cover;filter:sepia(.15) saturate(.7)}.wie-closing__copy{display:flex;flex-direction:column;justify-content:center;padding:54px 24px;text-align:center}.wie-closing__copy>span{font-size:.57rem;letter-spacing:.22em;color:var(--wie-champagne)}.wie-closing__copy>p{max-width:520px;margin:18px auto;color:var(--wie-muted);line-height:1.75}.wie-closing h2{display:grid;margin:24px 0;font-family:Georgia,serif;font-size:clamp(3.2rem,13vw,7rem);font-weight:400;line-height:.8;letter-spacing:-.07em}.wie-closing h2 em{color:var(--wie-champagne);font-size:.38em;margin:.3em}.wie-closing small{font-size:.62rem;text-transform:uppercase;letter-spacing:.12em}.wie-floating-actions{position:fixed;right:14px;bottom:16px;z-index:90;display:grid;gap:8px}.wie--preview .wie-floating-actions{position:absolute}.wie-floating-actions button{width:44px;height:44px;border:1px solid rgba(23,23,22,.18);border-radius:50%;display:grid;place-items:center;background:rgba(255,253,248,.92);color:var(--wie-ink);box-shadow:0 12px 28px rgba(23,23,22,.14);cursor:pointer;backdrop-filter:blur(10px)}.wie.is-music-playing [data-wie-music]{background:var(--wie-ink);color:#fff}.wie-lightbox{position:fixed;inset:0;z-index:180;display:grid;place-items:center;background:rgba(17,17,16,.94);padding:22px;opacity:0;transition:opacity .24s ease}.wie--preview .wie-lightbox{position:absolute}.wie-lightbox.is-visible{opacity:1}.wie-lightbox[hidden]{display:none}.wie-lightbox img{max-width:min(94vw,920px);max-height:88vh;object-fit:contain;box-shadow:0 26px 80px rgba(0,0,0,.4)}.wie-lightbox button{position:absolute;right:18px;top:18px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:transparent;color:#fff;font-size:1.6rem;cursor:pointer}.wie-preview-label{position:fixed;left:16px;bottom:16px;z-index:95;padding:8px 11px;background:rgba(23,23,22,.82);color:#fff;font-size:.58rem;font-weight:850;letter-spacing:.16em}.wie-reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.wie-reveal.is-visible{opacity:1;transform:none}
@keyframes wieCoverZoom{to{transform:scale(1.12)}}@keyframes wieCurtain{0%{transform:scaleX(0)}48%{transform:scaleX(1)}100%{transform:scaleX(0);transform-origin:center}}
@media(min-width:700px){.wie-section{padding:108px 32px}.wie-cover{grid-template-columns:48% 52%;grid-template-rows:1fr}.wie-cover__photo{grid-column:2}.wie-cover__copy{grid-column:1;grid-row:1}.wie-nav{padding-inline:32px}.wie-nav nav{display:flex}.wie-hero{grid-template-columns:48% 52%}.wie-hero__copy{padding:72px 6vw}.wie-hero__visual{min-height:calc(100vh - 62px)}.wie-hero__image{inset:45px 45px 100px}.wie-countdown-section{grid-template-columns:1fr 1.2fr;align-items:end;padding:70px 5vw}.wie-couple__grid{grid-template-columns:1fr 90px 1fr;align-items:center;max-width:1050px;margin:auto}.wie-couple__and{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;border:1px solid var(--wie-line);font-family:Georgia,serif;color:var(--wie-champagne);font-size:2rem}.wie-couple-card--groom{margin-top:100px}.wie-events__grid{grid-template-columns:1fr 1fr}.wie-event-card{padding:34px}.wie-gallery__grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:230px}.wie-gallery__item{min-height:0}.wie-gallery__item--1{grid-column:span 2}.wie-gallery__item--4{grid-column:span 2}.wie-location__ticket{grid-template-columns:auto 1fr auto;align-items:center;padding:40px}.wie-form{grid-template-columns:1fr 1fr}.wie-form label:last-of-type,.wie-form button,.wie-wishes .wie-form label{grid-column:1/-1}.wie-gift__card>div{grid-template-columns:1fr auto;align-items:center}.wie-wishes__grid{grid-template-columns:1fr 1fr;align-items:start}.wie-closing{grid-template-columns:52% 48%}.wie-closing__photo{min-height:700px}.wie-closing__copy{padding:60px}.wie--preview .wie-cover__copy,.wie--preview .wie-hero__copy{padding-inline:4vw}}
@media(min-width:1020px){.wie-section{padding:130px 7vw}.wie-heading{display:grid;grid-template-columns:.35fr .65fr;align-items:start}.wie-heading>span{padding-top:14px}.wie-heading h2,.wie-heading p{grid-column:2}.wie-story__chapters article{display:grid;grid-template-columns:.28fr .42fr .3fr;align-items:start;gap:30px;padding:42px 0}.wie-story__chapters article>span{padding-top:12px}.wie-story__chapters h3{margin:0}.wie-story__chapters p{margin:4px 0}.wie-story__chapters b{position:static;text-align:right}.wie-floating-actions{right:26px;bottom:26px}.wie-floating-actions button{width:50px;height:50px}}
@media(prefers-reduced-motion:reduce){.wie *{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.wie-reveal{opacity:1;transform:none}}

/* STEP 04 — Hide the real scrolling thumb inside public invitation iframes. */
html.invitation-immersive,html.invitation-immersive body{scrollbar-width:none;-ms-overflow-style:none}
html.invitation-immersive::-webkit-scrollbar,html.invitation-immersive body::-webkit-scrollbar{width:0;height:0;display:none}
.preview-frame--cinematic.is-mobile .wie--preview{min-width:0}
.preview-frame--cinematic[data-template-theme="wedding-ivory-editorial-motion"]{background:var(--wie-ivory)}
.customer-preview-frame iframe{scrollbar-width:none;-ms-overflow-style:none}


/* ==========================================================================
   STEP 04R1 — LOCKED MOBILE-FIRST PREVIEW STANDARD
   - Every template starts from the mobile composition.
   - Desktop is an enhancement, never a scaled-down desktop layout.
   - Internal scrolling remains functional while every scrollbar thumb is hidden.
   ========================================================================== */
.preview-frame--cinematic,
.customer-preview-frame,
.preview-frame--cinematic .wie,
.preview-frame--cinematic .wnfc,
.customer-preview-frame iframe {
  -ms-overflow-style: none !important;
  scrollbar-width: none !important;
  scrollbar-color: transparent transparent !important;
}
.preview-frame--cinematic::-webkit-scrollbar,
.preview-frame--cinematic *::-webkit-scrollbar,
.customer-preview-frame::-webkit-scrollbar,
.customer-preview-frame *::-webkit-scrollbar,
.customer-preview-frame iframe::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
  background: transparent !important;
}
.preview-frame--cinematic::-webkit-scrollbar-thumb,
.preview-frame--cinematic *::-webkit-scrollbar-thumb,
.customer-preview-frame::-webkit-scrollbar-thumb,
.customer-preview-frame *::-webkit-scrollbar-thumb {
  background: transparent !important;
  border: 0 !important;
}
.preview-frame--cinematic {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  container-type: inline-size;
}
.preview-frame--cinematic.is-mobile {
  width: min(100%, 430px);
  max-width: 430px;
}
.preview-frame--cinematic.is-desktop {
  width: min(100%, 1180px);
  max-width: 1180px;
}

/* Preview covers must be contained by the device frame, not the browser viewport. */
.wie--preview .wie-cover {
  position: absolute !important;
  min-height: 100% !important;
}

/* Force the actual mobile composition when Mobile is selected on a wide desktop. */
.preview-frame--cinematic.is-mobile .wie {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow-x: clip !important;
}
.preview-frame--cinematic.is-mobile .wie *,
.preview-frame--cinematic.is-mobile .wie *::before,
.preview-frame--cinematic.is-mobile .wie *::after {
  min-width: 0;
  max-width: 100%;
}
.preview-frame--cinematic.is-mobile .wie-cover {
  grid-template-columns: 1fr !important;
  grid-template-rows: 44% 56% !important;
}
.preview-frame--cinematic.is-mobile .wie-cover__photo {
  grid-column: 1 !important;
  grid-row: 1 !important;
}
.preview-frame--cinematic.is-mobile .wie-cover__copy {
  grid-column: 1 !important;
  grid-row: 2 !important;
  padding: 26px 20px 30px !important;
}
.preview-frame--cinematic.is-mobile .wie-cover h1 {
  font-size: clamp(2.55rem, 14cqw, 3.75rem) !important;
  letter-spacing: -.055em !important;
  overflow-wrap: anywhere;
}
.preview-frame--cinematic.is-mobile .wie-cover__issue {
  top: 12px !important;
  left: 14px !important;
  right: 14px !important;
}
.preview-frame--cinematic.is-mobile .wie-nav {
  height: 58px !important;
  padding-inline: 16px !important;
}
.preview-frame--cinematic.is-mobile .wie-nav nav {
  display: none !important;
}
.preview-frame--cinematic.is-mobile .wie-hero {
  grid-template-columns: 1fr !important;
  min-height: 0 !important;
}
.preview-frame--cinematic.is-mobile .wie-hero__copy {
  padding: 58px 22px 42px !important;
}
.preview-frame--cinematic.is-mobile .wie-hero h2 {
  font-size: clamp(3rem, 17cqw, 4.55rem) !important;
  line-height: .8 !important;
  overflow-wrap: anywhere;
}
.preview-frame--cinematic.is-mobile .wie-hero__visual {
  min-height: 520px !important;
}
.preview-frame--cinematic.is-mobile .wie-hero__image {
  inset: 28px 20px 88px !important;
}
.preview-frame--cinematic.is-mobile .wie-countdown-section {
  grid-template-columns: 1fr !important;
  align-items: stretch !important;
  padding: 54px 20px !important;
}
.preview-frame--cinematic.is-mobile .wie-countdown-copy h2 {
  font-size: clamp(2rem, 10cqw, 2.7rem) !important;
}
.preview-frame--cinematic.is-mobile .wie-section {
  padding: 82px 20px !important;
}
.preview-frame--cinematic.is-mobile .wie-heading {
  display: block !important;
  margin-bottom: 36px !important;
}
.preview-frame--cinematic.is-mobile .wie-heading > span,
.preview-frame--cinematic.is-mobile .wie-heading h2,
.preview-frame--cinematic.is-mobile .wie-heading p {
  grid-column: auto !important;
  padding-top: 0 !important;
}
.preview-frame--cinematic.is-mobile .wie-heading h2 {
  font-size: clamp(2.65rem, 13cqw, 3.7rem) !important;
}
.preview-frame--cinematic.is-mobile .wie-couple__grid {
  grid-template-columns: 1fr !important;
  gap: 36px !important;
}
.preview-frame--cinematic.is-mobile .wie-couple__and {
  display: none !important;
}
.preview-frame--cinematic.is-mobile .wie-couple-card--groom {
  margin-top: 0 !important;
}
.preview-frame--cinematic.is-mobile .wie-events__grid,
.preview-frame--cinematic.is-mobile .wie-wishes__grid {
  grid-template-columns: 1fr !important;
}
.preview-frame--cinematic.is-mobile .wie-event-card {
  padding: 28px 22px !important;
}
.preview-frame--cinematic.is-mobile .wie-story__chapters article {
  display: block !important;
  padding: 32px 0 !important;
}
.preview-frame--cinematic.is-mobile .wie-story__chapters article > span {
  padding-top: 0 !important;
}
.preview-frame--cinematic.is-mobile .wie-story__chapters h3 {
  margin: 12px 0 !important;
}
.preview-frame--cinematic.is-mobile .wie-story__chapters b {
  position: absolute !important;
  right: 0 !important;
  top: 28px !important;
  text-align: left !important;
}
.preview-frame--cinematic.is-mobile .wie-gallery__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-rows: auto !important;
}
.preview-frame--cinematic.is-mobile .wie-gallery__item {
  min-height: 210px !important;
  grid-column: auto !important;
  grid-row: auto !important;
}
.preview-frame--cinematic.is-mobile .wie-location__ticket {
  grid-template-columns: 1fr !important;
  align-items: start !important;
  padding: 30px 22px !important;
}
.preview-frame--cinematic.is-mobile .wie-location__ticket h2 {
  font-size: clamp(2rem, 10cqw, 2.75rem) !important;
  overflow-wrap: anywhere;
}
.preview-frame--cinematic.is-mobile .wie-form {
  grid-template-columns: 1fr !important;
}
.preview-frame--cinematic.is-mobile .wie-form label,
.preview-frame--cinematic.is-mobile .wie-form button {
  grid-column: auto !important;
}
.preview-frame--cinematic.is-mobile .wie-gift__card > div {
  grid-template-columns: 1fr !important;
  align-items: start !important;
}
.preview-frame--cinematic.is-mobile .wie-gift__card h2 {
  font-size: clamp(2.5rem, 12cqw, 3.45rem) !important;
}
.preview-frame--cinematic.is-mobile .wie-closing {
  grid-template-columns: 1fr !important;
  min-height: 0 !important;
}
.preview-frame--cinematic.is-mobile .wie-closing__photo {
  min-height: 430px !important;
}
.preview-frame--cinematic.is-mobile .wie-closing__copy {
  padding: 54px 22px !important;
}
.preview-frame--cinematic.is-mobile .wie-closing h2 {
  font-size: clamp(3rem, 15cqw, 4.4rem) !important;
}
.preview-frame--cinematic.is-mobile .wie-floating-actions {
  right: 12px !important;
  bottom: 14px !important;
}

/* The same standard applies to customer iframe previews. */
.customer-preview-frame,
.customer-preview-frame iframe {
  overflow: hidden !important;
}
html.invitation-immersive,
html.invitation-immersive body,
body.invitation-immersive,
body.invitation-immersive #app {
  -ms-overflow-style: none !important;
  scrollbar-width: none !important;
  scrollbar-color: transparent transparent !important;
}
html.invitation-immersive::-webkit-scrollbar,
html.invitation-immersive body::-webkit-scrollbar,
body.invitation-immersive::-webkit-scrollbar,
body.invitation-immersive #app::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
  background: transparent !important;
}

/* ========================================================================== 
   STEP 04R2 — LOCKED OPENING STANDARD
   Mobile-first opening: immediately visible, vertically centered, no opening
   scroll, no clipped CTA, and a centered portrait composition on wide screens.
   ========================================================================== */
.wnfc:not(.is-open),
.wie:not(.is-open){
  height:100dvh !important;
  min-height:100svh !important;
  max-height:100dvh !important;
  overflow:hidden !important;
}
.wnfc:not(.is-open) .wnfc-content,
.wie:not(.is-open) .wie-content{
  height:0 !important;
  min-height:0 !important;
  overflow:hidden !important;
  visibility:hidden !important;
}
.wnfc-cover,
.wie-cover{
  height:100dvh !important;
  min-height:100svh !important;
  max-height:100dvh !important;
  overflow:hidden !important;
  overscroll-behavior:none !important;
}

/* Template 01 is the reference opening: centered portrait on tablet/desktop. */
.wnfc-cover{
  inset:0 auto 0 50% !important;
  width:min(100%,430px) !important;
  transform:translateX(-50%);
  padding:clamp(18px,4vh,30px) 20px !important;
  box-shadow:0 0 0 100vmax #f4f7fb,0 28px 80px rgba(6,21,47,.24);
}
.wnfc.is-open .wnfc-cover{
  transform:translateX(-50%) scale(1.035) !important;
}
.wnfc-cover__content{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  max-height:100%;
}
.wnfc-cover h1{
  font-size:clamp(2.65rem,min(14vw,9.2vh),5rem) !important;
  line-height:.84 !important;
}
.wnfc-cover__date{margin:clamp(12px,2.4vh,22px) 0 !important}
.wnfc-cover__guest{margin-bottom:clamp(12px,2.2vh,20px) !important;padding:11px 16px !important}
.wnfc-cover__hint{margin-top:8px !important}
.wnfc-cover__halo{width:min(82vw,58vh,360px) !important}
.wnfc-cover .wnfc-floral{width:min(58vw,37vh,250px) !important}

/* Template 02 keeps its editorial identity but follows the same opening rule. */
.wie-cover{
  inset:0 auto 0 50% !important;
  width:min(100%,430px) !important;
  transform:translateX(-50%);
  grid-template-columns:1fr !important;
  grid-template-rows:minmax(150px,38%) minmax(0,62%) !important;
  box-shadow:0 0 0 100vmax #f1eee8,0 28px 80px rgba(23,23,22,.18);
}
.wie.is-open .wie-cover{
  transform:translateX(-50%) !important;
}
.wie-cover__photo{
  grid-column:1 !important;
  grid-row:1 !important;
}
.wie-cover__copy{
  grid-column:1 !important;
  grid-row:2 !important;
  justify-content:center !important;
  padding:18px 22px 20px !important;
  overflow:hidden !important;
}
.wie-cover__issue{top:9px !important;left:14px !important;right:14px !important}
.wie-rule{margin:4px auto 8px !important}
.wie-cover h1{
  font-size:clamp(2.35rem,min(13.5vw,8.2vh),4.25rem) !important;
  line-height:.82 !important;
}
.wie-cover__copy>p{margin:10px 0 7px !important;font-size:.58rem !important}
.wie-cover__guest{margin-bottom:10px !important}
.wie-open{padding:11px 16px 11px 19px !important}
.wie-cover__hint{margin-top:6px !important}

/* In the internal preview the cover belongs to the device frame itself. */
.wnfc--preview .wnfc-cover,
.wie--preview .wie-cover{
  position:absolute !important;
  inset:0 !important;
  left:0 !important;
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  max-height:100% !important;
  transform:none !important;
  box-shadow:none !important;
}
.wnfc--preview.is-open .wnfc-cover{transform:scale(1.035) !important}
.wie--preview.is-open .wie-cover{transform:none !important}
.preview-frame--cinematic:not(.opening-complete){
  overflow:hidden !important;
}

@media(max-height:700px){
  .wnfc-cover{padding:14px 18px !important}
  .wnfc-overline{margin-bottom:10px !important;font-size:.6rem !important}
  .wnfc-cover h1{font-size:clamp(2.25rem,min(12vw,8vh),3.6rem) !important}
  .wnfc-cover__date{margin:9px 0 !important;font-size:.64rem !important}
  .wnfc-cover__guest{padding:8px 12px !important;margin-bottom:9px !important}
  .wnfc-open{padding:10px 18px !important}
  .wnfc-cover__hint{display:none !important}
  .wie-cover{grid-template-rows:31% 69% !important}
  .wie-cover__copy{padding:14px 18px 15px !important}
  .wie-cover h1{font-size:clamp(2rem,min(12vw,7.2vh),3.25rem) !important}
  .wie-cover__copy>p{margin:7px 0 5px !important}
  .wie-cover__guest{margin-bottom:7px !important}
  .wie-cover__hint{display:none !important}
}

@media(max-width:699px){
  .wnfc-cover,.wie-cover{
    left:0 !important;
    width:100% !important;
    transform:none !important;
    box-shadow:none !important;
  }
  .wnfc.is-open .wnfc-cover{transform:scale(1.035) !important}
  .wie.is-open .wie-cover{transform:none !important}
}


/* STEP 04R3 — LOCKED invitation section navigation standard */
.wnfc-mini-header .wnfc-monogram,.wnfc-mini-header nav button,.wie-nav .wie-nav__mark,.wie-nav nav button,.wie-explore{appearance:none;-webkit-appearance:none;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:0;margin:0}
.wnfc-mini-header nav,.wie-nav nav{display:flex;align-items:center;gap:clamp(8px,2vw,20px);min-width:0;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}
.wnfc-mini-header nav::-webkit-scrollbar,.wie-nav nav::-webkit-scrollbar{display:none;width:0;height:0}
.wnfc-mini-header nav button{position:relative;white-space:nowrap;font-size:.7rem;letter-spacing:.06em;color:#c7d2e6;transition:color .22s ease}
.wnfc-mini-header nav button:after{content:"";position:absolute;left:50%;right:50%;bottom:-8px;height:2px;border-radius:999px;background:var(--wnfc-gold);transition:left .22s ease,right .22s ease}
.wnfc-mini-header nav button:hover,.wnfc-mini-header nav button.is-active{color:#fff}
.wnfc-mini-header nav button.is-active:after{left:0;right:0}
.wnfc-outline-button{appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer}
.wie-nav nav button{position:relative;white-space:nowrap;font-size:.64rem;text-transform:uppercase;letter-spacing:.12em;color:var(--wie-ink)}
.wie-nav nav button:after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:var(--wie-ink);transition:.25s ease}
.wie-nav nav button:hover:after,.wie-nav nav button.is-active:after{right:0}
.wie-explore{width:max-content;margin-top:17px;border-bottom:1px solid var(--wie-ink);padding-bottom:6px;font-size:.72rem;font-weight:750;text-align:left}
.wie-explore span{margin-left:12px}
#wnfc-home,#wnfc-couple,#wnfc-event,#wnfc-story,#wnfc-gallery,#wie-home,#wie-couple,#wie-event,#wie-story,#wie-gallery{scroll-margin-top:76px}
@media(max-width:520px){.wnfc-mini-header,.wie-nav{gap:10px;padding-inline:12px}.wnfc-mini-header nav,.wie-nav nav{gap:10px}.wnfc-mini-header nav button{font-size:.56rem}.wie-nav nav button{font-size:.53rem;letter-spacing:.07em}.wie-nav>span{display:none}.wnfc-monogram{flex:0 0 auto}.wie-nav__mark{flex:0 0 auto}}

/* ========================================================================== 
   STEP 04R4 — LOCKED STICKY INVITATION HEADER STANDARD
   The internal invitation header remains frozen at the top on Mobile Preview,
   Desktop Preview, and Guest View. Section navigation offsets account for the
   sticky header so section titles are never hidden underneath it.
   ========================================================================== */
:root{
  --invite-sticky-header-height:62px;
}

/* Template 01 previously used overflow:hidden on the template root, which
   prevents CSS sticky from tracking the actual page/preview scroll container. */
.wnfc.is-open{
  overflow-x:hidden !important;
  overflow-y:visible !important;
}

[data-invite-sticky-nav]{
  position:sticky !important;
  position:-webkit-sticky !important;
  top:0 !important;
  left:0;
  right:0;
  z-index:140 !important;
  width:100%;
  min-height:var(--invite-sticky-header-height);
  flex:0 0 auto;
  isolation:isolate;
  transform:translateZ(0);
  will-change:transform;
}

.wnfc-mini-header{
  box-shadow:0 10px 28px rgba(3,16,37,.18);
}

.wie-nav{
  box-shadow:0 10px 28px rgba(23,23,22,.10);
}

/* Keep the frozen header above animated ornaments, galleries and floating UI. */
.wnfc-content,
.wie-content{
  overflow:visible;
}

/* Preview frames are the scroll containers. Sticky headers therefore remain
   visible inside the device preview without becoming fixed to the whole site. */
.preview-frame--cinematic [data-invite-sticky-nav],
.customer-preview-frame [data-invite-sticky-nav]{
  top:0 !important;
}

/* Public/guest view uses document scrolling and the same shared header rule. */
body.invitation-immersive [data-invite-sticky-nav]{
  top:0 !important;
}

/* Native anchor and scripted navigation both reserve room for the frozen bar. */
.wnfc,
.wie,
.preview-frame--cinematic,
.customer-preview-frame{
  scroll-padding-top:calc(var(--invite-sticky-header-height) + 14px);
}

#wnfc-home,#wnfc-couple,#wnfc-event,#wnfc-story,#wnfc-gallery,
#wie-home,#wie-couple,#wie-event,#wie-story,#wie-gallery{
  scroll-margin-top:calc(var(--invite-sticky-header-height) + 14px) !important;
}

@media(max-width:520px){
  :root{--invite-sticky-header-height:58px}
  [data-invite-sticky-nav]{
    height:var(--invite-sticky-header-height) !important;
    min-height:var(--invite-sticky-header-height) !important;
  }
}

/* ========================================================================== 
   STEP 04R5 — LOCKED FROZEN INVITATION HEADER STANDARD
   Uses scroll-synchronised absolute positioning instead of CSS sticky so the
   header remains visible inside direct previews, iframe previews and guest view
   even when template ancestors use transforms, transitions or overflow rules.
   ========================================================================== */
.wnfc.is-open,
.wie.is-open{
  overflow:visible !important;
}

.wnfc-content,
.wie-content{
  position:relative !important;
  overflow:visible !important;
}

[data-invite-sticky-nav].invite-frozen-header{
  position:absolute !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  z-index:220 !important;
  transform:translate3d(0,var(--invite-frozen-y,0px),0) !important;
  will-change:transform;
  margin:0 !important;
}

.invite-frozen-header-spacer{
  display:block;
  width:100%;
  height:var(--invite-sticky-header-height-runtime,var(--invite-sticky-header-height));
  min-height:var(--invite-sticky-header-height-runtime,var(--invite-sticky-header-height));
  flex:0 0 auto;
  pointer-events:none;
}

/* The designated preview frame is the only scrolling surface in direct preview. */
.preview-frame--cinematic{
  overflow-x:hidden !important;
  overflow-y:auto !important;
  overscroll-behavior:contain;
}

/* Guest pages and customer iframe documents clip horizontal decoration without
   creating a nested vertical scroll container that can break the frozen nav. */
html.invitation-immersive,
body.invitation-immersive,
body.invitation-immersive #app{
  overflow-x:clip !important;
  overflow-y:visible !important;
}

/* Internal navigation remains available on mobile; it scrolls horizontally
   without exposing a scrollbar when the available width is narrow. */
@media(max-width:699px){
  .wnfc-mini-header nav,
  .wie-nav nav,
  .preview-frame--cinematic.is-mobile .wie-nav nav{
    display:flex !important;
    flex:1 1 auto;
    justify-content:flex-end;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scrollbar-width:none !important;
    -ms-overflow-style:none !important;
  }
  .wnfc-mini-header nav::-webkit-scrollbar,
  .wie-nav nav::-webkit-scrollbar,
  .preview-frame--cinematic.is-mobile .wie-nav nav::-webkit-scrollbar{
    display:none !important;
    width:0 !important;
    height:0 !important;
  }
}

/* ========================================================================== 

/* ========================================================================== 
   STEP 07 — ROUTE LOADING & STABLE PREVIEW
   ========================================================================== */
.route-loading{min-height:100svh;display:grid;place-content:center;justify-items:center;gap:14px;background:#f5f8fc;color:#0b1530}.route-loading span{width:38px;height:38px;border:3px solid #d9e5f2;border-top-color:#2563eb;border-radius:50%;animation:nexora-spin .7s linear infinite}.route-loading strong{font-size:.82rem}@keyframes nexora-spin{to{transform:rotate(360deg)}}
.preview-frame--cinematic{overflow-x:hidden!important;overflow-y:auto!important;touch-action:pan-y;overscroll-behavior:contain;scrollbar-width:none!important;-ms-overflow-style:none!important;container-type:size}.preview-frame--cinematic::-webkit-scrollbar,.preview-frame--cinematic *::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}.preview-frame--cinematic.is-mobile{width:min(390px,calc(100vw - 30px));height:min(760px,calc(100svh - 205px));min-height:580px}.preview-frame--cinematic.is-desktop{width:min(1120px,calc(100vw - 50px));height:min(720px,calc(100svh - 205px));min-height:560px}

/* ========================================================================== 
   STEP 07 — EVENT COLLECTION / SHARED DATA CONTRACT
   ========================================================================== */
.event-invite{--event-bg:#f3f6fa;--event-surface:#fff;--event-ink:#102039;--event-muted:#68788d;--event-dark:#07162f;--event-accent:#37d6c8;position:relative;width:100%;max-width:100%;min-width:0;overflow-x:clip;background:var(--event-bg);color:var(--event-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;scrollbar-width:none;-ms-overflow-style:none}.event-invite *{box-sizing:border-box}.event-invite::-webkit-scrollbar,.event-invite *::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}.event-invite img{max-width:100%}.event-invite button,.event-invite input,.event-invite select{font:inherit}.event-invite button{cursor:pointer}.event-invite h1,.event-invite h2,.event-invite h3,.event-invite p{margin-top:0}.event-invite--festival{--event-bg:#fff8f5;--event-surface:#fff;--event-ink:#2e163e;--event-muted:#7c657e;--event-dark:#25133f;--event-accent:#ffba67}.event-invite--gala{--event-bg:#f4f1ea;--event-surface:#fbf9f4;--event-ink:#191817;--event-muted:#6f6a61;--event-dark:#0b0b0c;--event-accent:#cdaa5e}
.event-nav{height:62px;min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 clamp(12px,3vw,42px);background:color-mix(in srgb,var(--event-dark) 96%,transparent);color:#fff;border-bottom:1px solid rgba(255,255,255,.1);box-shadow:0 10px 30px rgba(3,13,29,.16);backdrop-filter:blur(16px)}.event-brand{display:flex;align-items:center;gap:9px;min-width:0;border:0;background:transparent;color:#fff;padding:0}.event-brand b{display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border:1px solid color-mix(in srgb,var(--event-accent) 72%,white);border-radius:50%;color:var(--event-accent);font-size:.75rem}.event-brand span{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.event-nav nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(9px,2vw,24px);min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.event-nav nav button{position:relative;flex:0 0 auto;border:0;background:transparent;color:#b9c6d7;padding:21px 0;font-size:.61rem;font-weight:780;letter-spacing:.07em;white-space:nowrap}.event-nav nav button:after{content:"";position:absolute;left:50%;right:50%;bottom:13px;height:2px;background:var(--event-accent);transition:.22s}.event-nav nav button.is-active,.event-nav nav button:hover{color:#fff}.event-nav nav button.is-active:after{left:0;right:0}
.event-cover{position:relative;display:grid;grid-template-columns:1fr;align-items:center;gap:24px;min-height:calc(100svh - 62px);height:calc(100svh - 62px);padding:clamp(24px,6vw,76px) clamp(18px,6vw,78px);overflow:hidden;background:radial-gradient(circle at 84% 16%,color-mix(in srgb,var(--event-accent) 22%,transparent),transparent 30%),linear-gradient(145deg,var(--event-dark),color-mix(in srgb,var(--event-dark) 78%,#214c7c));color:#fff}.event-invite--festival .event-cover{background:radial-gradient(circle at 90% 15%,rgba(255,106,139,.55),transparent 28%),radial-gradient(circle at 15% 95%,rgba(71,224,211,.32),transparent 34%),linear-gradient(135deg,#25133f,#783d9d 58%,#e45778)}.event-invite--gala .event-cover{background:radial-gradient(circle at 76% 40%,rgba(205,170,94,.15),transparent 30%),linear-gradient(135deg,#050506,#161616 64%,#24211d)}.preview-frame--cinematic .event-cover{min-height:calc(100cqh - 62px);height:calc(100cqh - 62px)}.event-cover__copy{position:relative;z-index:3;max-width:760px;min-width:0;text-align:center;margin:auto}.event-kicker{margin:0 0 13px;color:var(--event-accent);font-size:.62rem;font-weight:900;letter-spacing:.22em;text-transform:uppercase}.event-cover h1{max-width:100%;margin:0 0 16px;font-size:clamp(2.1rem,10vw,5.8rem);line-height:.94;letter-spacing:-.055em;overflow-wrap:anywhere;text-wrap:balance}.event-invite--gala .event-cover h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.035em}.event-tagline{max-width:620px;margin:0 auto 20px;color:#d0daea;font-size:clamp(.82rem,2.4vw,1.08rem);line-height:1.55}.event-invite--festival .event-tagline{color:#fff0ed}.event-invite--gala .event-tagline{color:#d7d0c3}.event-cover__meta{display:grid;grid-template-columns:1fr;gap:1px;max-width:670px;margin:0 auto 14px;border:1px solid rgba(255,255,255,.16);border-radius:17px;overflow:hidden;background:rgba(255,255,255,.08)}.event-cover__meta div{min-width:0;padding:10px 12px;background:rgba(3,13,30,.38)}.event-cover__meta small,.event-cover__guest small{display:block;margin-bottom:3px;color:#9db0c7;font-size:.48rem;font-weight:850;letter-spacing:.14em}.event-cover__meta strong{display:block;font-size:.72rem;overflow-wrap:anywhere}.event-cover__guest{margin:0 auto 12px}.event-cover__guest strong{font-family:Georgia,serif;font-weight:500;font-size:1rem}.event-open{display:inline-flex;align-items:center;gap:16px;border:1px solid var(--event-accent);border-radius:999px;padding:11px 19px;background:var(--event-accent);color:#101828;font-weight:850;box-shadow:0 16px 36px color-mix(in srgb,var(--event-accent) 22%,transparent)}.event-open span{font-size:1.05rem}.event-cover-art{display:none;position:relative;z-index:2;min-width:0;align-self:center}.event-cover-art--summit{aspect-ratio:1;border:1px solid rgba(55,214,200,.25);border-radius:50%;place-items:center}.event-cover-art--summit i{position:absolute;border:1px solid rgba(55,214,200,.2);border-radius:50%;inset:14%}.event-cover-art--summit i:nth-child(2){inset:29%}.event-cover-art--summit i:nth-child(3){inset:44%;background:var(--event-accent)}.event-cover-art--summit strong{font-size:7rem;color:#fff}.event-cover-art--summit span{position:absolute;bottom:12%;font-size:.65rem;letter-spacing:.15em}.event-cover-art--festival{height:430px}.event-cover-art--festival i{position:absolute;width:35%;height:88%;top:6%;border-radius:999px;background:rgba(255,255,255,.13);transform:rotate(10deg)}.event-cover-art--festival i:nth-child(1){left:5%}.event-cover-art--festival i:nth-child(2){left:34%;background:rgba(255,190,106,.32)}.event-cover-art--festival i:nth-child(3){right:3%;background:rgba(73,224,211,.26)}.event-cover-art--festival strong{position:absolute;left:9%;bottom:15%;font-size:4.5rem;letter-spacing:-.08em}.event-cover-art--festival span{position:absolute;right:6%;top:10%;font-size:.65rem;letter-spacing:.15em}.event-cover-art--gala{height:430px;border:1px solid rgba(205,170,94,.35);border-radius:28px;background:rgba(255,255,255,.035);box-shadow:0 40px 100px rgba(0,0,0,.4)}.event-cover-art--gala i{position:absolute;border:1px solid rgba(205,170,94,.35);border-radius:50%;width:360px;height:360px;right:-150px;top:35px}.event-cover-art--gala i:nth-child(2){width:270px;height:270px;right:-105px;top:80px}.event-cover-art--gala b{position:absolute;left:38px;top:70px;font-family:Georgia,serif;font-size:7rem;font-weight:500}.event-cover-art--gala span{position:absolute;left:45px;top:205px;color:var(--event-accent);font-size:1.3rem;font-weight:800;letter-spacing:.12em}.event-cover-art--gala strong{position:absolute;left:45px;bottom:45px;color:#d9d2c5;font-size:.68rem;letter-spacing:.2em}
.event-content{position:relative;background:var(--event-bg)}.event-section{padding:78px 20px}.event-heading>span,.event-location__copy>span,.event-register__copy>span{display:block;margin-bottom:12px;color:color-mix(in srgb,var(--event-accent) 72%,var(--event-ink));font-size:.61rem;font-weight:900;letter-spacing:.19em}.event-heading h2,.event-location__copy h2,.event-register__copy h2{margin-bottom:18px;font-size:clamp(2.05rem,8vw,4.7rem);line-height:1;letter-spacing:-.055em;text-wrap:balance}.event-invite--gala .event-heading h2,.event-invite--gala .event-location__copy h2,.event-invite--gala .event-register__copy h2,.event-invite--gala .event-closing h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.035em}.event-heading p{max-width:670px;color:var(--event-muted)}.event-about__grid{display:grid;gap:25px;margin-top:32px}.event-about__lead{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.3rem,5vw,2.3rem);line-height:1.37}.event-about__stats{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid color-mix(in srgb,var(--event-muted) 28%,transparent)}.event-about__stats article{padding:19px 6px;text-align:center;border-right:1px solid color-mix(in srgb,var(--event-muted) 28%,transparent)}.event-about__stats article:last-child{border-right:0}.event-about__stats strong{display:block;font-size:1.35rem}.event-about__stats span{font-size:.58rem;color:var(--event-muted)}.event-countdown{display:grid;grid-template-columns:repeat(4,1fr);margin-top:32px;border-radius:19px;overflow:hidden;background:var(--event-dark);color:#fff}.event-countdown div{padding:16px 3px;text-align:center;border-right:1px solid rgba(255,255,255,.12)}.event-countdown div:last-child{border:0}.event-countdown strong{display:block;font-size:1.25rem}.event-countdown span{font-size:.5rem;color:#abb8ca}.event-agenda{background:var(--event-surface)}.event-agenda__list{display:grid;margin-top:32px;border-top:1px solid color-mix(in srgb,var(--event-muted) 28%,transparent)}.event-agenda-card{display:grid;grid-template-columns:34px 62px 1fr;gap:10px;align-items:start;padding:21px 0;border-bottom:1px solid color-mix(in srgb,var(--event-muted) 28%,transparent)}.event-agenda-card>span{color:var(--event-accent);font-size:.56rem;font-weight:900}.event-agenda-card time{font-weight:850}.event-agenda-card h3{margin-bottom:5px;font-size:1rem}.event-agenda-card p{margin:0;color:var(--event-muted);font-size:.75rem}.event-speakers{background:var(--event-dark);color:#fff}.event-speakers__grid{display:grid;gap:14px;margin-top:32px}.event-speaker{display:grid;grid-template-columns:94px 1fr;gap:16px;align-items:center;padding:13px;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:rgba(255,255,255,.055)}.event-speaker__portrait{aspect-ratio:1;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--event-accent) 30%,transparent),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.12)}.event-speaker__portrait span{color:var(--event-accent);font-size:1.25rem;font-weight:850}.event-speaker small{color:var(--event-accent);font-size:.48rem;letter-spacing:.15em}.event-speaker h3{margin:5px 0;font-size:1.08rem}.event-speaker p{margin:0;color:#aeb8c8;font-size:.72rem}.event-location{display:grid;gap:28px;background:color-mix(in srgb,var(--event-bg) 82%,#d9e2ee)}.event-location__map{position:relative;min-height:300px;overflow:hidden;border-radius:25px;background:var(--event-dark)}.event-map-grid{position:absolute;inset:0;background-image:linear-gradient(color-mix(in srgb,var(--event-accent) 22%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--event-accent) 22%,transparent) 1px,transparent 1px);background-size:34px 34px;transform:rotate(8deg) scale(1.25)}.event-location__map>span{position:absolute;left:22px;right:22px;bottom:22px;color:#fff;font-size:1.2rem;font-weight:850;letter-spacing:.08em}.event-location__map>i{position:absolute;left:58%;top:40%;width:20px;height:20px;border:6px solid var(--event-accent);border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 0 0 11px color-mix(in srgb,var(--event-accent) 20%,transparent)}.event-location__copy p{color:var(--event-muted)}.event-location__copy>div{display:grid;gap:4px;padding:17px 0;border-block:1px solid color-mix(in srgb,var(--event-muted) 28%,transparent)}.event-location__copy a{display:inline-flex;margin-top:19px;padding:11px 17px;border-radius:999px;background:var(--event-dark);color:#fff;font-size:.75rem;font-weight:800}.event-register{display:grid;gap:28px;background:var(--event-surface)}.event-register__copy p{color:var(--event-muted)}.event-register__copy small{font-weight:750;color:color-mix(in srgb,var(--event-accent) 72%,var(--event-ink))}.event-form{display:grid;gap:12px;padding:19px;border:1px solid color-mix(in srgb,var(--event-muted) 26%,transparent);border-radius:23px;background:color-mix(in srgb,var(--event-bg) 65%,#fff)}.event-form label{display:grid;gap:6px;color:var(--event-muted);font-size:.65rem;font-weight:750}.event-form input,.event-form select{width:100%;padding:11px;border:1px solid color-mix(in srgb,var(--event-muted) 28%,transparent);border-radius:11px;background:#fff;color:#14243a;outline:none}.event-form button{border:0;border-radius:12px;padding:12px;background:var(--event-accent);color:#111827;font-weight:850}.event-closing{padding:82px 20px;text-align:center;background:var(--event-dark);color:#fff}.event-closing__mark{width:50px;height:50px;display:grid;place-items:center;margin:0 auto 22px;border:1px solid var(--event-accent);border-radius:50%;color:var(--event-accent);font-weight:850}.event-closing p{color:#aeb8c8;font-size:.65rem;letter-spacing:.12em}.event-closing h2{margin-bottom:18px;font-size:clamp(2.15rem,9vw,4.8rem);line-height:1;letter-spacing:-.055em}.event-closing small{color:#aeb8c8}.event-floating-actions{position:fixed;right:14px;bottom:14px;z-index:230;display:grid;gap:8px}.preview-frame--cinematic .event-floating-actions{position:absolute}.event-floating-actions button{width:42px;height:42px;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:var(--event-dark);color:#fff;box-shadow:0 10px 25px rgba(0,0,0,.18)}.event-floating-actions button:first-child{background:var(--event-accent);color:#111827}.event-preview-label{position:fixed;left:13px;bottom:13px;z-index:240;padding:7px 12px;border-radius:999px;background:var(--event-dark);color:#fff;font-size:.5rem;font-weight:900;letter-spacing:.17em}.preview-frame--cinematic .event-preview-label{position:absolute}.event-reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.event-reveal.is-visible{opacity:1;transform:none}.event-invite,.preview-frame--cinematic{scroll-padding-top:76px}#event-cover,#event-about,#event-agenda,#event-speakers,#event-location{scroll-margin-top:76px}

/* Direct device preview is controlled by the selected preview mode, not by the outer browser width. */
.preview-frame--cinematic.is-mobile .event-nav{height:58px;min-height:58px;padding:0 10px}.preview-frame--cinematic.is-mobile .event-brand span{display:none}.preview-frame--cinematic.is-mobile .event-nav nav{gap:9px}.preview-frame--cinematic.is-mobile .event-nav nav button{padding-block:20px;font-size:.52rem}.preview-frame--cinematic.is-mobile .event-cover{grid-template-columns:1fr;min-height:calc(100cqh - 58px);height:calc(100cqh - 58px);padding:18px 17px}.preview-frame--cinematic.is-mobile .event-cover__copy{text-align:center;margin:auto;width:100%;max-width:100%}.preview-frame--cinematic.is-mobile .event-kicker{font-size:.5rem;margin-bottom:8px}.preview-frame--cinematic.is-mobile .event-cover h1{font-size:clamp(1.75rem,min(9.5cqw,6.5cqh),2.55rem);line-height:.9;margin-bottom:9px}.preview-frame--cinematic.is-mobile .event-tagline{font-size:.68rem;line-height:1.4;margin-bottom:10px}.preview-frame--cinematic.is-mobile .event-cover__meta{margin-bottom:8px}.preview-frame--cinematic.is-mobile .event-cover__meta div{padding:7px 8px}.preview-frame--cinematic.is-mobile .event-cover__meta small{font-size:.4rem}.preview-frame--cinematic.is-mobile .event-cover__meta strong{font-size:.57rem}.preview-frame--cinematic.is-mobile .event-cover__guest{margin-bottom:8px}.preview-frame--cinematic.is-mobile .event-cover__guest small{font-size:.4rem}.preview-frame--cinematic.is-mobile .event-cover__guest strong{font-size:.77rem}.preview-frame--cinematic.is-mobile .event-open{padding:8px 13px;font-size:.62rem}.preview-frame--cinematic.is-mobile .event-cover-art{display:none}.preview-frame--cinematic.is-mobile .event-section{padding:65px 17px}.preview-frame--cinematic.is-mobile .event-heading h2{font-size:2.25rem}.preview-frame--cinematic.is-mobile .event-about__grid,.preview-frame--cinematic.is-mobile .event-location,.preview-frame--cinematic.is-mobile .event-register{grid-template-columns:1fr}.preview-frame--cinematic.is-mobile .event-speakers__grid{grid-template-columns:1fr}.preview-frame--cinematic.is-mobile .event-agenda__list{margin-left:0}
.preview-frame--cinematic.is-desktop .event-cover{grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);min-height:calc(100cqh - 62px);height:calc(100cqh - 62px);padding:clamp(28px,4cqh,60px) clamp(32px,5cqw,72px);gap:55px}.preview-frame--cinematic.is-desktop .event-cover__copy{text-align:left;margin:0}.preview-frame--cinematic.is-desktop .event-tagline,.preview-frame--cinematic.is-desktop .event-cover__meta,.preview-frame--cinematic.is-desktop .event-cover__guest{margin-left:0}.preview-frame--cinematic.is-desktop .event-cover h1{font-size:clamp(3rem,5cqw,5.7rem)}.preview-frame--cinematic.is-desktop .event-cover__meta{grid-template-columns:repeat(3,minmax(0,1fr))}.preview-frame--cinematic.is-desktop .event-cover-art{display:grid}.preview-frame--cinematic.is-desktop .event-section{padding:95px clamp(45px,7cqw,95px)}

@media(min-width:700px){.event-cover__meta{grid-template-columns:repeat(3,1fr)}.event-section{padding:100px clamp(42px,7vw,96px)}.event-about__grid{grid-template-columns:1.2fr .8fr;align-items:end}.event-agenda-card{grid-template-columns:48px 96px 1fr;padding:27px 0}.event-speakers__grid{grid-template-columns:repeat(3,1fr)}.event-speaker{grid-template-columns:1fr;align-items:start}.event-location,.event-register{grid-template-columns:1fr 1fr;align-items:center}.event-form{padding:27px}}
@media(min-width:1000px){.event-cover{grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:70px}.event-cover__copy{text-align:left;margin:0}.event-tagline,.event-cover__meta,.event-cover__guest{margin-left:0}.event-cover-art{display:grid}.event-cover h1{font-size:clamp(4rem,6vw,6.4rem)}.event-heading{display:grid;grid-template-columns:.55fr 1.2fr;gap:40px}.event-heading>span{grid-column:1}.event-heading h2,.event-heading p{grid-column:2}.event-heading h2{grid-row:1 / span 2}.event-agenda__list{margin-left:31%}.event-speaker{padding:20px}.event-cover-art--summit{width:min(430px,34vw)}}
@media(max-width:699px){.event-brand span{display:none}.event-nav{height:58px;min-height:58px;padding-inline:10px}.event-nav nav{gap:9px}.event-nav nav button{font-size:.52rem}.event-cover{min-height:calc(100svh - 58px);height:calc(100svh - 58px);padding:18px 17px}.event-cover__copy{width:100%;text-align:center}.event-kicker{font-size:.5rem;margin-bottom:8px}.event-cover h1{font-size:clamp(1.9rem,min(10vw,6.8svh),3rem);margin-bottom:10px}.event-tagline{font-size:.72rem;line-height:1.4;margin-bottom:11px}.event-cover__meta div{padding:7px 8px}.event-cover__meta small{font-size:.4rem}.event-cover__meta strong{font-size:.58rem}.event-cover__guest{margin-bottom:8px}.event-open{padding:9px 14px;font-size:.64rem}.event-cover-art{display:none}.event-section{padding-inline:17px}.event-heading h2{font-size:2.35rem}.event-agenda-card{grid-template-columns:30px 58px 1fr}.event-speaker{grid-template-columns:88px 1fr}}
@media(max-height:640px) and (max-width:699px){.event-kicker,.event-tagline{display:none}.event-cover h1{font-size:clamp(1.75rem,9.2vw,2.5rem)}.event-cover__meta{margin-bottom:6px}.event-cover__guest{margin-bottom:6px}.event-open{padding-block:7px}}
@media(prefers-reduced-motion:reduce){.event-invite *{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.event-reveal{opacity:1!important;transform:none!important}.route-loading span{animation:none}}

/* ========================================================================== 
   STEP 07R1 — CATALOG CARD ALIGNMENT + RELIABLE PREVIEW SCROLL
   Customer-facing cards use one clean visual rhythm. Category/style metadata
   remains available to filters through data attributes, but is hidden on cards.
   ========================================================================== */
.template-grid,
.reference-catalog__grid,
.reference-featured-grid{
  align-items:stretch;
}
.template-card{
  display:flex;
  min-width:0;
  height:100%;
  flex-direction:column;
  border-radius:14px;
  box-shadow:0 8px 22px rgba(11,21,48,.055);
}
.template-card__media{
  isolation:isolate;
  flex:0 0 auto;
  aspect-ratio:16/9;
  background:linear-gradient(135deg,var(--card-bg,#07162f),var(--card-bg2,#102b55));
}
.template-card__media img{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transition:transform .28s ease;
}
.template-card:hover .template-card__media img{transform:scale(1.025)}
.template-card__fallback{
  position:absolute;
  inset:0;
  z-index:0;
  display:none;
  align-content:center;
  justify-items:center;
  gap:5px;
  padding:18px;
  text-align:center;
  color:#fff;
  background:
    radial-gradient(circle at 78% 20%,color-mix(in srgb,var(--card-accent,#37d6c8) 28%,transparent),transparent 34%),
    linear-gradient(135deg,var(--card-bg,#07162f),var(--card-bg2,#102b55));
}
.template-card__media.is-image-fallback .template-card__fallback{display:grid}
.template-card__fallback small{font-size:.55rem;font-weight:850;letter-spacing:.15em;text-transform:uppercase;opacity:.72}
.template-card__fallback strong{max-width:95%;font-size:1rem;line-height:1.15;text-wrap:balance}
.template-card .badge,
.template-card .favorite{z-index:3}
.template-card .favorite{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  top:9px;
  left:9px;
  font-size:1rem;
  color:#17213a;
  pointer-events:none;
}
.template-card .badge{top:9px;right:9px;padding:4px 7px;font-size:.55rem}
.template-card__body{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:10px;
  min-height:72px;
  padding:12px 12px 6px;
}
.template-card__body h3{
  display:-webkit-box;
  min-width:0;
  min-height:2.5em;
  margin:0;
  overflow:hidden;
  font-size:.88rem;
  font-weight:800;
  line-height:1.25;
  letter-spacing:-.015em;
  text-wrap:balance;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
.template-card__body strong{
  padding-top:1px;
  font-size:.73rem;
  line-height:1.25;
  white-space:nowrap;
}
.template-card__actions{
  grid-template-columns:1fr 1fr;
  gap:7px;
  margin-top:auto;
  padding:8px 12px 12px;
}
.template-card__actions .button{
  min-height:34px;
  border-radius:9px;
  padding:7px 8px;
  font-size:.67rem;
  line-height:1.1;
  box-shadow:none;
  white-space:nowrap;
}
.reference-catalog__grid{gap:12px}
.reference-catalog__grid .template-card__media,
.reference-featured-grid .template-card__media{aspect-ratio:16/9}

/* The preview frame is the sole scroll surface in Mobile and Desktop modes. */
.preview-stage--cinematic{
  min-height:0;
  padding-bottom:26px;
}
.preview-frame--cinematic{
  position:relative;
  display:block;
  max-width:calc(100vw - 24px);
  overflow-x:hidden!important;
  overflow-y:scroll!important;
  touch-action:pan-y!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch;
  scroll-behavior:smooth;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.preview-frame--cinematic::-webkit-scrollbar,
.preview-frame--cinematic *::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}
.preview-frame--cinematic:focus{outline:0}
.preview-frame--cinematic > [data-template-root],
.preview-frame--cinematic > [data-event-root],
.preview-frame--cinematic > [data-wnfc-root],
.preview-frame--cinematic > [data-wie-root]{
  min-height:calc(100% + 1px);
}
@media(max-width:599px){
  .reference-catalog__grid{grid-template-columns:1fr}
  .template-card__body{min-height:66px}
}

/* ========================================================================== 
   STEP 08 — KHITAN TEMPLATE COLLECTION
   Three modern, elegant and simple themes sharing one information contract.
   LOCKED: mobile-first, one-viewport opening, frozen internal navigation,
   hidden scrollbars, route-safe section navigation and no horizontal overflow.
   ========================================================================== */
.khitan-invite{
  --kh-bg:#f3f8ff;
  --kh-surface:#fff;
  --kh-ink:#10233f;
  --kh-muted:#687a91;
  --kh-dark:#0b2c5f;
  --kh-deep:#071d42;
  --kh-accent:#d9ad55;
  --kh-soft:#dcecff;
  position:relative;
  width:100%;
  max-width:100%;
  min-width:0;
  overflow-x:clip;
  background:var(--kh-bg);
  color:var(--kh-ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.khitan-invite--emerald{
  --kh-bg:#f2f5ef;
  --kh-surface:#fbfcf8;
  --kh-ink:#18382f;
  --kh-muted:#667a70;
  --kh-dark:#0d4638;
  --kh-deep:#073126;
  --kh-accent:#c8a45a;
  --kh-soft:#dce9df;
}
.khitan-invite--sandstone{
  --kh-bg:#f4efe7;
  --kh-surface:#fffaf3;
  --kh-ink:#302d2a;
  --kh-muted:#7e756b;
  --kh-dark:#38332e;
  --kh-deep:#211f1c;
  --kh-accent:#b97955;
  --kh-soft:#e6d7c8;
}
.khitan-invite *{box-sizing:border-box}
.khitan-invite::-webkit-scrollbar,.khitan-invite *::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
.khitan-invite button,.khitan-invite input,.khitan-invite select{font:inherit}
.khitan-invite button{cursor:pointer}
.khitan-invite h1,.khitan-invite h2,.khitan-invite h3,.khitan-invite p{margin-top:0}
.khitan-content{position:relative;overflow:visible}

.khitan-nav{
  height:62px;
  min-height:62px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:0 clamp(12px,3vw,42px);
  background:color-mix(in srgb,var(--kh-deep) 96%,transparent);
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.11);
  box-shadow:0 12px 34px rgba(6,22,47,.16);
  backdrop-filter:blur(16px);
}
.khitan-brand{display:flex;align-items:center;gap:9px;min-width:0;border:0;background:transparent;color:#fff;padding:0}
.khitan-brand b{display:grid;place-items:center;width:31px;height:31px;flex:0 0 auto;border:1px solid color-mix(in srgb,var(--kh-accent) 78%,white);border-radius:50%;color:var(--kh-accent);font-size:.75rem}
.khitan-brand span{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.khitan-nav nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(9px,2vw,24px);min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
.khitan-nav nav button{position:relative;flex:0 0 auto;border:0;background:transparent;color:#bdcadc;padding:21px 0;font-size:.61rem;font-weight:780;letter-spacing:.06em;white-space:nowrap}
.khitan-nav nav button:after{content:"";position:absolute;left:50%;right:50%;bottom:13px;height:2px;background:var(--kh-accent);transition:.22s}
.khitan-nav nav button.is-active,.khitan-nav nav button:hover{color:#fff}
.khitan-nav nav button.is-active:after{left:0;right:0}

.khitan-cover{
  position:relative;
  display:grid;
  grid-template-columns:1fr;
  align-items:center;
  gap:24px;
  min-height:calc(100svh - 62px);
  height:calc(100svh - 62px);
  padding:clamp(22px,5vw,70px) clamp(18px,6vw,80px);
  overflow:hidden;
  background:
    radial-gradient(circle at 80% 18%,rgba(255,255,255,.12),transparent 26%),
    radial-gradient(circle at 18% 86%,color-mix(in srgb,var(--kh-accent) 20%,transparent),transparent 32%),
    linear-gradient(145deg,var(--kh-deep),var(--kh-dark));
  color:#fff;
}
.khitan-invite--emerald .khitan-cover{
  background:
    linear-gradient(30deg,transparent 48%,rgba(200,164,90,.12) 49%,rgba(200,164,90,.12) 51%,transparent 52%) 0 0/76px 76px,
    radial-gradient(circle at 80% 15%,rgba(200,164,90,.2),transparent 30%),
    linear-gradient(145deg,#073126,#0d4c3d 60%,#1a6654);
}
.khitan-invite--sandstone .khitan-cover{
  color:var(--kh-ink);
  background:
    radial-gradient(circle at 84% 16%,rgba(185,121,85,.16),transparent 29%),
    radial-gradient(circle at 15% 84%,rgba(73,95,76,.09),transparent 30%),
    linear-gradient(140deg,#fffaf3,#efe2d3);
}
.khitan-cover__copy{position:relative;z-index:3;width:100%;max-width:720px;margin:auto;text-align:center}
.khitan-kicker{margin:0 0 9px;color:var(--kh-accent);font-size:.57rem;font-weight:900;letter-spacing:.22em;text-transform:uppercase}
.khitan-cover__copy>small{display:block;margin-bottom:8px;color:#bdcbe0;font-size:.58rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.khitan-invite--sandstone .khitan-cover__copy>small{color:var(--kh-muted)}
.khitan-cover h1{max-width:100%;margin:0 0 10px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.5rem,11vw,6.3rem);font-weight:500;line-height:.91;letter-spacing:-.045em;overflow-wrap:anywhere;text-wrap:balance}
.khitan-subtitle{max-width:560px;margin:0 auto 13px;color:#d4deec;font-size:clamp(.72rem,2.2vw,.98rem);line-height:1.45}
.khitan-invite--sandstone .khitan-subtitle{color:var(--kh-muted)}
.khitan-cover__date{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 13px;margin-bottom:11px;font-size:.65rem}
.khitan-cover__date span{font-weight:780;letter-spacing:.05em}.khitan-cover__date b{color:var(--kh-accent)}
.khitan-cover__guest{margin-bottom:12px}.khitan-cover__guest small{display:block;color:#9eb1ca;font-size:.47rem;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.khitan-invite--sandstone .khitan-cover__guest small{color:var(--kh-muted)}
.khitan-cover__guest strong{display:block;margin-top:2px;font-family:Georgia,"Times New Roman",serif;font-size:1rem;font-weight:500}
.khitan-open{display:inline-flex;align-items:center;gap:16px;border:1px solid var(--kh-accent);border-radius:999px;padding:10px 18px;background:var(--kh-accent);color:#17231f;font-size:.72rem;font-weight:850;box-shadow:0 16px 36px color-mix(in srgb,var(--kh-accent) 24%,transparent)}
.khitan-open span{font-size:1rem}

.khitan-cover-art{display:none;position:relative;z-index:2;align-self:center;justify-self:center;width:min(410px,34vw);aspect-ratio:1}
.khitan-cover-art--sky{border:1px solid rgba(217,173,85,.34);border-radius:50%;place-items:center}
.khitan-cover-art--sky:before,.khitan-cover-art--sky:after{content:"";position:absolute;left:10%;right:10%;bottom:16%;height:22%;border-radius:50% 50% 8px 8px;background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,.04));clip-path:polygon(0 100%,0 68%,8% 68%,8% 35%,12% 35%,12% 68%,25% 68%,25% 48%,31% 48%,31% 68%,43% 68%,43% 28%,50% 10%,57% 28%,57% 68%,69% 68%,69% 48%,75% 48%,75% 68%,88% 68%,88% 35%,92% 35%,92% 68%,100% 68%,100% 100%)}
.khitan-cover-art--sky:after{transform:translateY(22px);opacity:.18}
.khitan-cover-art--sky i{position:absolute;border:1px solid rgba(217,173,85,.21);border-radius:50%;inset:12%}.khitan-cover-art--sky i:nth-child(2){inset:26%}.khitan-cover-art--sky i:nth-child(3){inset:40%}
.khitan-cover-art--sky b{font-size:4rem;color:var(--kh-accent);font-weight:400;transform:translateY(-16%)}
.khitan-cover-art--sky span{position:absolute;bottom:8%;font-size:.56rem;letter-spacing:.2em;color:#d9e5f4}
.khitan-cover-art--emerald{place-items:center;transform:rotate(45deg);border:1px solid rgba(200,164,90,.45)}
.khitan-cover-art--emerald i{position:absolute;inset:10%;border:1px solid rgba(200,164,90,.28)}.khitan-cover-art--emerald i:nth-child(2){inset:23%;transform:rotate(45deg)}.khitan-cover-art--emerald i:nth-child(3){inset:36%;background:rgba(255,255,255,.06)}
.khitan-cover-art--emerald b{transform:rotate(-45deg);font-family:Georgia,serif;font-size:6rem;color:#f7f0dc;font-weight:400}
.khitan-cover-art--emerald span{position:absolute;right:-12%;bottom:3%;transform:rotate(-45deg);color:var(--kh-accent);font-size:.58rem;font-weight:850;letter-spacing:.18em}
.khitan-cover-art--sandstone{display:none;align-content:space-between;padding:13%;border:1px solid rgba(48,45,42,.2);border-radius:50% 50% 5% 50%}
.khitan-cover-art--sandstone:before{content:"";position:absolute;inset:18%;border-radius:50%;background:linear-gradient(135deg,#c98d67,#e9c7aa);box-shadow:0 0 0 30px rgba(255,255,255,.22)}
.khitan-cover-art--sandstone i{position:absolute;width:32%;aspect-ratio:1;border:1px solid rgba(48,45,42,.22);border-radius:50%}.khitan-cover-art--sandstone i:first-child{right:5%;top:2%}.khitan-cover-art--sandstone i:nth-child(2){left:4%;bottom:3%}
.khitan-cover-art--sandstone b,.khitan-cover-art--sandstone span{position:relative;z-index:2}.khitan-cover-art--sandstone b{font-size:3.2rem;font-weight:500}.khitan-cover-art--sandstone span{justify-self:end;font-size:.56rem;font-weight:850;letter-spacing:.17em;text-align:right}

.khitan-section{padding:78px 20px}
.khitan-section-heading>span,.khitan-prayer__copy>span,.khitan-location__copy>span,.khitan-rsvp__copy>span,.khitan-gift__copy>span{display:block;margin-bottom:12px;color:var(--kh-accent);font-size:.58rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.khitan-section-heading h2,.khitan-prayer__copy h2,.khitan-rsvp__copy h2,.khitan-gift__copy h2{margin-bottom:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.2rem,8vw,4.9rem);font-weight:500;line-height:1.02;letter-spacing:-.045em;text-wrap:balance}
.khitan-profile{background:var(--kh-surface)}
.khitan-profile__grid{display:grid;gap:28px;margin-top:34px;align-items:center}
.khitan-profile__portrait{display:grid;justify-items:center;gap:12px}
.khitan-profile__portrait>div{position:relative;display:grid;place-items:center;width:min(250px,70vw);aspect-ratio:1;border-radius:48% 48% 18% 48%;background:linear-gradient(145deg,var(--kh-soft),color-mix(in srgb,var(--kh-accent) 28%,#fff));box-shadow:0 24px 55px color-mix(in srgb,var(--kh-dark) 14%,transparent);overflow:hidden}
.khitan-profile__portrait>div:before,.khitan-profile__portrait>div:after{content:"";position:absolute;border:1px solid color-mix(in srgb,var(--kh-dark) 16%,transparent);border-radius:50%;inset:12%}.khitan-profile__portrait>div:after{inset:27%}
.khitan-profile__portrait span{position:relative;z-index:2;font-family:Georgia,serif;font-size:6rem;color:var(--kh-dark)}
.khitan-profile__portrait i{position:absolute;right:13%;bottom:10%;width:42px;height:42px;border-radius:50%;background:var(--kh-accent);box-shadow:0 0 0 9px rgba(255,255,255,.45)}
.khitan-profile__portrait small{color:var(--kh-muted);font-size:.64rem;font-weight:780;letter-spacing:.13em;text-transform:uppercase}
.khitan-profile__copy p{color:var(--kh-muted);font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.2rem,4vw,2rem);line-height:1.55}
.khitan-profile__copy h3{margin:25px 0 3px;font-family:Georgia,serif;font-size:clamp(2.3rem,7vw,4.5rem);font-weight:500}
.khitan-profile__copy>span{display:block;color:var(--kh-muted)}
.khitan-profile__copy button{margin-top:23px;border:0;border-radius:999px;padding:11px 18px;background:var(--kh-dark);color:#fff;font-size:.72rem;font-weight:800}

.khitan-event{background:var(--kh-dark);color:#fff}
.khitan-event .khitan-section-heading>span{color:var(--kh-accent)}
.khitan-event__grid{display:grid;gap:12px;margin-top:34px}
.khitan-event-card{display:grid;gap:8px;padding:20px;border:1px solid rgba(255,255,255,.14);border-radius:21px;background:rgba(255,255,255,.055)}
.khitan-event-card small{color:var(--kh-accent);font-size:.52rem;font-weight:900;letter-spacing:.17em}.khitan-event-card strong{font-family:Georgia,serif;font-size:1.35rem;font-weight:500}.khitan-event-card span{color:#bdc9d8;font-size:.75rem;line-height:1.55}.khitan-event-card a{justify-self:start;margin-top:5px;padding:8px 12px;border:1px solid var(--kh-accent);border-radius:999px;color:#fff;font-size:.65rem;font-weight:750}
.khitan-countdown{display:grid;grid-template-columns:repeat(4,1fr);margin-top:18px;border-radius:17px;overflow:hidden;background:rgba(0,0,0,.18)}
.khitan-countdown div{padding:14px 3px;text-align:center;border-right:1px solid rgba(255,255,255,.12)}.khitan-countdown div:last-child{border:0}.khitan-countdown strong{display:block;font-size:1.18rem}.khitan-countdown span{font-size:.48rem;color:#b8c5d5}

.khitan-prayer{position:relative;display:grid;place-items:center;min-height:560px;text-align:center;background:var(--kh-bg);overflow:hidden}
.khitan-prayer:before,.khitan-prayer:after{content:"";position:absolute;width:360px;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--kh-accent) 25%,transparent);border-radius:50%}.khitan-prayer:before{left:-220px;top:-160px}.khitan-prayer:after{right:-220px;bottom:-160px}
.khitan-prayer__ornament{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:26px;color:var(--kh-accent)}.khitan-prayer__ornament i{width:58px;height:1px;background:currentColor}.khitan-prayer__ornament b{font-family:Georgia,serif;font-size:2rem;font-weight:500}
.khitan-prayer__copy{position:relative;z-index:2;max-width:850px}
.khitan-prayer blockquote{max-width:720px;margin:28px auto 18px;color:var(--kh-muted);font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.08rem,3vw,1.55rem);font-style:italic;line-height:1.65}
.khitan-prayer p{margin:0;color:var(--kh-dark);font-size:.72rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}

.khitan-gallery{background:var(--kh-surface)}
.khitan-gallery__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:34px}
.khitan-gallery-card{position:relative;min-width:0;aspect-ratio:.84;border:0;border-radius:18px;padding:0;overflow:hidden;background:linear-gradient(145deg,var(--kh-soft),color-mix(in srgb,var(--kh-accent) 28%,#fff));color:var(--kh-ink);text-align:left}
.khitan-gallery-card:nth-child(2n){background:linear-gradient(145deg,color-mix(in srgb,var(--kh-dark) 84%,#fff),var(--kh-dark));color:#fff}
.khitan-gallery-card>span{position:absolute;top:12px;left:13px;z-index:2;font-size:.52rem;font-weight:900;letter-spacing:.13em}
.khitan-gallery-card>div{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:15px;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.16))}
.khitan-gallery-card i{position:absolute;width:62%;aspect-ratio:1;right:-12%;top:8%;border:1px solid currentColor;border-radius:50%;opacity:.25}.khitan-gallery-card i:after{content:"";position:absolute;inset:22%;border:1px solid currentColor;border-radius:50%}
.khitan-gallery-card b{position:relative;z-index:2;font-family:Georgia,serif;font-size:1rem;font-weight:500}

.khitan-location{display:grid;gap:27px;background:var(--kh-bg)}
.khitan-location__map{position:relative;min-height:300px;border-radius:24px;overflow:hidden;background:var(--kh-dark)}
.khitan-location__map>div{position:absolute;inset:-20%;background-image:linear-gradient(color-mix(in srgb,var(--kh-accent) 25%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--kh-accent) 25%,transparent) 1px,transparent 1px);background-size:32px 32px;transform:rotate(8deg)}
.khitan-location__map i{position:absolute;left:58%;top:38%;width:22px;height:22px;border:6px solid var(--kh-accent);border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 0 0 12px color-mix(in srgb,var(--kh-accent) 18%,transparent)}
.khitan-location__map span{position:absolute;left:20px;right:20px;bottom:19px;color:#fff;font-family:Georgia,serif;font-size:1.2rem}
.khitan-location__copy p{color:var(--kh-muted)}.khitan-location__copy h2{font-family:Georgia,serif;font-size:clamp(2.25rem,8vw,4.7rem);font-weight:500;line-height:1.03}.khitan-location__copy strong{display:block;padding:15px 0;border-block:1px solid color-mix(in srgb,var(--kh-muted) 25%,transparent);font-size:.8rem}.khitan-location__copy a{display:inline-flex;margin-top:18px;border-radius:999px;padding:11px 17px;background:var(--kh-dark);color:#fff;font-size:.72rem;font-weight:800}

.khitan-rsvp{display:grid;gap:28px;background:var(--kh-surface)}.khitan-rsvp__copy p,.khitan-gift__copy p{color:var(--kh-muted)}
.khitan-form{display:grid;gap:11px;padding:19px;border:1px solid color-mix(in srgb,var(--kh-muted) 23%,transparent);border-radius:22px;background:var(--kh-bg)}
.khitan-form label{display:grid;gap:6px;color:var(--kh-muted);font-size:.65rem;font-weight:780}.khitan-form input,.khitan-form select{width:100%;border:1px solid color-mix(in srgb,var(--kh-muted) 26%,transparent);border-radius:11px;padding:11px;background:#fff;color:#1d2b36;outline:none}.khitan-form button{border:0;border-radius:11px;padding:12px;background:var(--kh-dark);color:#fff;font-weight:850}

.khitan-gift{display:grid;gap:28px;background:var(--kh-bg)}
.khitan-gift__card{display:grid;gap:9px;padding:24px;border-radius:24px;background:var(--kh-dark);color:#fff;box-shadow:0 22px 45px color-mix(in srgb,var(--kh-dark) 17%,transparent)}.khitan-gift__card small{color:var(--kh-accent);font-size:.55rem;font-weight:850;letter-spacing:.16em}.khitan-gift__card strong{font-family:Georgia,serif;font-size:1.16rem;font-weight:500;overflow-wrap:anywhere}.khitan-gift__card button{justify-self:start;margin-top:7px;border:1px solid var(--kh-accent);border-radius:999px;padding:9px 14px;background:transparent;color:#fff;font-size:.68rem;font-weight:800}

.khitan-closing{padding:82px 20px;text-align:center;background:var(--kh-deep);color:#fff}.khitan-closing__mark{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 21px;border:1px solid var(--kh-accent);border-radius:50%;color:var(--kh-accent);font-family:Georgia,serif;font-size:1.25rem}.khitan-closing p{color:#b2c0d2;font-size:.63rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase}.khitan-closing h2{max-width:850px;margin:0 auto 18px;font-family:Georgia,serif;font-size:clamp(2rem,8vw,4.6rem);font-weight:500;line-height:1.04;letter-spacing:-.04em}.khitan-closing small{color:#aebcd0}

.khitan-floating-actions{position:fixed;right:14px;bottom:14px;z-index:230;display:grid;gap:8px}.preview-frame--cinematic .khitan-floating-actions{position:absolute}.khitan-floating-actions button{width:42px;height:42px;border:1px solid rgba(255,255,255,.17);border-radius:50%;background:var(--kh-dark);color:#fff;box-shadow:0 10px 25px rgba(0,0,0,.17)}.khitan-floating-actions button:first-child{background:var(--kh-accent);color:#17231f}
.khitan-preview-label{position:fixed;left:13px;bottom:13px;z-index:240;padding:7px 12px;border-radius:999px;background:var(--kh-deep);color:#fff;font-size:.5rem;font-weight:900;letter-spacing:.17em}.preview-frame--cinematic .khitan-preview-label{position:absolute}
.khitan-lightbox{position:fixed;inset:0;z-index:300;place-items:center;background:rgba(5,15,28,.88);backdrop-filter:blur(12px)}.preview-frame--cinematic .khitan-lightbox{position:absolute}.khitan-lightbox.is-open{display:grid}.khitan-lightbox>button{position:absolute;right:18px;top:18px;width:42px;height:42px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:transparent;color:#fff;font-size:1.4rem}.khitan-lightbox>div{display:grid;place-items:center;width:min(430px,78%);aspect-ratio:1;border:1px solid rgba(255,255,255,.22);border-radius:48% 48% 15% 48%;color:#fff;background:radial-gradient(circle,var(--kh-dark),var(--kh-deep))}.khitan-lightbox span{font-size:.6rem;letter-spacing:.18em}.khitan-lightbox strong{font-family:Georgia,serif;font-size:2rem;font-weight:500}
.khitan-reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.khitan-reveal.is-visible{opacity:1;transform:none}
.khitan-invite,.preview-frame--cinematic{scroll-padding-top:76px}
#khitan-cover,#khitan-profile,#khitan-event,#khitan-prayer,#khitan-gallery,#khitan-location{scroll-margin-top:76px}

/* Direct device preview follows the selected frame mode, independent of outer browser width. */
.preview-frame--cinematic.is-mobile .khitan-nav{height:58px;min-height:58px;padding:0 9px}
.preview-frame--cinematic.is-mobile .khitan-brand span{display:none}
.preview-frame--cinematic.is-mobile .khitan-nav nav{gap:8px}
.preview-frame--cinematic.is-mobile .khitan-nav nav button{padding-block:20px;font-size:.5rem}
.preview-frame--cinematic.is-mobile .khitan-cover{grid-template-columns:1fr;min-height:calc(100cqh - 58px);height:calc(100cqh - 58px);padding:15px 16px}
.preview-frame--cinematic.is-mobile .khitan-cover__copy{max-width:100%}
.preview-frame--cinematic.is-mobile .khitan-kicker{margin-bottom:5px;font-size:.44rem}
.preview-frame--cinematic.is-mobile .khitan-cover__copy>small{margin-bottom:5px;font-size:.45rem}
.preview-frame--cinematic.is-mobile .khitan-cover h1{margin-bottom:6px;font-size:clamp(2rem,min(11.4cqw,7.1cqh),3rem)}
.preview-frame--cinematic.is-mobile .khitan-subtitle{margin-bottom:7px;font-size:.62rem;line-height:1.3}
.preview-frame--cinematic.is-mobile .khitan-cover__date{margin-bottom:6px;font-size:.55rem}
.preview-frame--cinematic.is-mobile .khitan-cover__guest{margin-bottom:7px}
.preview-frame--cinematic.is-mobile .khitan-cover__guest small{font-size:.38rem}.preview-frame--cinematic.is-mobile .khitan-cover__guest strong{font-size:.78rem}
.preview-frame--cinematic.is-mobile .khitan-open{padding:8px 13px;font-size:.61rem}
.preview-frame--cinematic.is-mobile .khitan-cover-art{display:none}
.preview-frame--cinematic.is-mobile .khitan-section{padding:64px 17px}
.preview-frame--cinematic.is-mobile .khitan-section-heading h2,.preview-frame--cinematic.is-mobile .khitan-prayer__copy h2,.preview-frame--cinematic.is-mobile .khitan-rsvp__copy h2,.preview-frame--cinematic.is-mobile .khitan-gift__copy h2{font-size:2.25rem}
.preview-frame--cinematic.is-mobile .khitan-profile__grid,.preview-frame--cinematic.is-mobile .khitan-location,.preview-frame--cinematic.is-mobile .khitan-rsvp,.preview-frame--cinematic.is-mobile .khitan-gift{grid-template-columns:1fr}
.preview-frame--cinematic.is-mobile .khitan-event__grid{grid-template-columns:1fr}
.preview-frame--cinematic.is-mobile .khitan-gallery__grid{grid-template-columns:repeat(2,1fr)}

.preview-frame--cinematic.is-desktop .khitan-cover{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);min-height:calc(100cqh - 62px);height:calc(100cqh - 62px);padding:clamp(28px,4cqh,58px) clamp(34px,5cqw,72px);gap:54px}
.preview-frame--cinematic.is-desktop .khitan-cover__copy{text-align:left;margin:0}.preview-frame--cinematic.is-desktop .khitan-subtitle,.preview-frame--cinematic.is-desktop .khitan-cover__date,.preview-frame--cinematic.is-desktop .khitan-cover__guest{margin-left:0;justify-content:flex-start}.preview-frame--cinematic.is-desktop .khitan-cover h1{font-size:clamp(3.6rem,5.8cqw,6.4rem)}.preview-frame--cinematic.is-desktop .khitan-cover-art{display:grid}.preview-frame--cinematic.is-desktop .khitan-cover-art--sandstone{display:grid}.preview-frame--cinematic.is-desktop .khitan-section{padding:94px clamp(44px,7cqw,94px)}

@media(min-width:700px){
  .khitan-section{padding:96px clamp(42px,7vw,96px)}
  .khitan-profile__grid{grid-template-columns:.8fr 1.2fr}
  .khitan-event__grid{grid-template-columns:repeat(3,1fr)}
  .khitan-gallery__grid{grid-template-columns:repeat(3,1fr);gap:13px}
  .khitan-location,.khitan-rsvp,.khitan-gift{grid-template-columns:1fr 1fr;align-items:center}
  .khitan-form{padding:27px}
}
@media(min-width:1000px){
  .khitan-cover{grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);gap:70px}
  .khitan-cover__copy{text-align:left;margin:0}.khitan-subtitle,.khitan-cover__date,.khitan-cover__guest{margin-left:0;justify-content:flex-start}.khitan-cover-art{display:grid}.khitan-cover-art--sandstone{display:grid}
  .khitan-section-heading{display:grid;grid-template-columns:.55fr 1.2fr;gap:40px}.khitan-section-heading>span{grid-column:1}.khitan-section-heading h2{grid-column:2;grid-row:1 / span 2}
}
@media(max-width:699px){
  .khitan-nav{height:58px;min-height:58px;padding-inline:9px}.khitan-brand span{display:none}.khitan-nav nav{gap:8px}.khitan-nav nav button{font-size:.5rem}
  .khitan-cover{min-height:calc(100svh - 58px);height:calc(100svh - 58px);padding:15px 16px}.khitan-cover-art{display:none}.khitan-kicker{margin-bottom:5px;font-size:.44rem}.khitan-cover__copy>small{margin-bottom:5px;font-size:.45rem}.khitan-cover h1{margin-bottom:6px;font-size:clamp(2rem,min(11vw,7svh),3rem)}.khitan-subtitle{margin-bottom:7px;font-size:.62rem;line-height:1.3}.khitan-cover__date{margin-bottom:6px;font-size:.55rem}.khitan-cover__guest{margin-bottom:7px}.khitan-cover__guest small{font-size:.38rem}.khitan-cover__guest strong{font-size:.78rem}.khitan-open{padding:8px 13px;font-size:.61rem}
  .khitan-section{padding-inline:17px}.khitan-section-heading h2,.khitan-prayer__copy h2,.khitan-rsvp__copy h2,.khitan-gift__copy h2{font-size:2.3rem}.khitan-event-card{padding:17px}.khitan-gallery__grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-height:640px) and (max-width:699px){
  .khitan-kicker,.khitan-subtitle{display:none}.khitan-cover h1{font-size:clamp(1.9rem,9.2vw,2.55rem)}.khitan-cover__date{margin-bottom:4px}.khitan-cover__guest{margin-bottom:5px}.khitan-open{padding-block:7px}
}
@media(prefers-reduced-motion:reduce){.khitan-invite *{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.khitan-reveal{opacity:1!important;transform:none!important}}

/* ========================================================================== 
   STEP 09 — FIVE DISTINCT WEDDING CONCEPTS
   Terracotta Arch / Aurora Glass / Monochrome Atelier / Garden Letterpress /
   Celestial Orbit. Shared data contract, deliberately different composition.
   LOCKED: mobile-first, one-viewport opening, frozen nav, route-safe navigation,
   hidden scrollbars and no horizontal overflow.
   ========================================================================== */
.wcoll{position:relative;width:100%;max-width:100%;min-width:0;overflow-x:clip;background:var(--wc-bg,#fff);color:var(--wc-ink,#172033);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;scroll-padding-top:72px}.wcoll *{box-sizing:border-box}.wcoll img{display:block;width:100%;max-width:100%}.wcoll button,.wcoll input,.wcoll select,.wcoll textarea{font:inherit}.wcoll button{cursor:pointer}.wcoll-nav{--invite-frozen-transform:translate3d(0,var(--invite-frozen-y,0px),0);position:relative;z-index:220;display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;height:58px;min-height:58px;padding:0 12px;transform:var(--invite-frozen-transform);will-change:transform;backdrop-filter:blur(18px);border-bottom:1px solid color-mix(in srgb,var(--wc-line,#64748b) 30%,transparent)}.wcoll-brand{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:inherit;min-width:0}.wcoll-brand b{display:grid;place-items:center;width:31px;height:31px;border:1px solid currentColor;border-radius:50%;font-size:.66rem;letter-spacing:.08em}.wcoll-brand span{display:none;font-size:.65rem;font-weight:800;letter-spacing:.08em;white-space:nowrap}.wcoll-nav nav{display:flex;gap:8px;min-width:0;overflow-x:auto;scrollbar-width:none}.wcoll-nav nav::-webkit-scrollbar{display:none}.wcoll-nav nav button{position:relative;border:0;background:transparent;color:inherit;padding:19px 0 17px;font-size:.49rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;opacity:.66}.wcoll-nav nav button:after{content:"";position:absolute;left:0;right:0;bottom:8px;height:2px;background:var(--wc-accent,currentColor);transform:scaleX(0);transition:.22s ease}.wcoll-nav nav button.is-active,.wcoll-nav nav button:hover{opacity:1}.wcoll-nav nav button.is-active:after{transform:scaleX(1)}.wcoll-cover{position:relative;isolation:isolate;display:grid;width:100%;min-height:calc(100svh - 58px);height:calc(100svh - 58px);overflow:hidden}.preview-frame--cinematic.is-mobile .wcoll-cover,.preview-frame--cinematic.is-desktop .wcoll-cover{min-height:calc(100cqh - 58px);height:calc(100cqh - 58px)}.wcoll-section{position:relative;padding:74px 18px;scroll-margin-top:72px}.wcoll-section-label{margin-bottom:18px;font-size:.56rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.wcoll-reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.wcoll-reveal.is-visible{opacity:1;transform:none}.wcoll-countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;width:min(100%,520px);margin:28px auto 0}.wcoll-countdown div{display:grid;place-items:center;min-width:0;padding:11px 4px;border:1px solid color-mix(in srgb,var(--wc-line,#64748b) 40%,transparent);background:color-mix(in srgb,var(--wc-surface,#fff) 75%,transparent)}.wcoll-countdown strong{font-size:1rem}.wcoll-countdown span{font-size:.43rem;letter-spacing:.08em;text-transform:uppercase;opacity:.65}.wcoll-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.wcoll-gallery-item{position:relative;overflow:hidden;min-height:190px;border:0;padding:0;background:#d8d8d8}.wcoll-gallery-item img{height:100%;object-fit:cover;transition:transform .45s ease,filter .45s ease}.wcoll-gallery-item:hover img{transform:scale(1.035)}.wcoll-gallery-item span{position:absolute;right:10px;bottom:8px;font-size:.55rem;font-weight:900;letter-spacing:.13em}.wcoll-interaction{display:grid;gap:18px}.wcoll-interaction>div{padding:24px;border:1px solid color-mix(in srgb,var(--wc-line,#64748b) 35%,transparent);background:var(--wc-surface,#fff)}.wcoll-interaction small{font-size:.53rem;font-weight:900;letter-spacing:.18em}.wcoll-interaction h2{margin:12px 0 9px;font-family:Georgia,"Times New Roman",serif;font-size:2rem;line-height:1.02}.wcoll-interaction p{color:var(--wc-muted,#687386)}.wcoll-interaction form{display:grid;gap:9px;margin-top:18px}.wcoll-interaction input,.wcoll-interaction select,.wcoll-interaction textarea{width:100%;border:1px solid color-mix(in srgb,var(--wc-line,#64748b) 35%,transparent);background:color-mix(in srgb,var(--wc-surface,#fff) 88%,transparent);color:inherit;padding:11px 12px;outline:0}.wcoll-interaction textarea{min-height:96px;resize:vertical}.wcoll-interaction form button,.wcoll-interaction__gift button{border:0;background:var(--wc-strong,#172033);color:var(--wc-button,#fff);padding:11px 13px;font-weight:850}.wcoll-interaction__gift>div{display:grid;gap:11px;margin-top:17px}.wcoll-interaction__gift strong{font-size:.82rem;overflow-wrap:anywhere}.wcoll-interaction__wish [data-wcoll-wish-list]{display:grid;gap:8px;margin-top:14px}.wcoll-interaction__wish [data-wcoll-wish-list] article{padding:11px;border-top:1px solid color-mix(in srgb,var(--wc-line,#64748b) 25%,transparent)}.wcoll-interaction__wish [data-wcoll-wish-list] strong{font-size:.75rem}.wcoll-interaction__wish [data-wcoll-wish-list] p{margin:3px 0 0;font-size:.72rem}.wcoll-closing{display:grid;place-items:center;min-height:420px;padding:80px 22px;text-align:center}.wcoll-closing small,.wcoll-closing span{font-size:.56rem;font-weight:850;letter-spacing:.17em}.wcoll-closing h2{margin:16px 0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.4rem,10vw,5.4rem);line-height:.96;font-weight:500}.wcoll-floating{position:fixed;right:14px;bottom:14px;z-index:260;display:grid;gap:8px;opacity:0;pointer-events:none;transition:.25s ease}.preview-frame--cinematic .wcoll-floating{position:absolute}.wcoll.is-open .wcoll-floating{opacity:1;pointer-events:auto}.wcoll-floating button{width:42px;height:42px;border:1px solid color-mix(in srgb,var(--wc-accent,#fff) 50%,transparent);border-radius:50%;background:var(--wc-strong,#172033);color:var(--wc-button,#fff);box-shadow:0 12px 28px rgba(0,0,0,.18)}.wcoll-floating button:first-child{background:var(--wc-accent,#d4a35f);color:var(--wc-strong,#172033)}.wcoll-preview-label{position:fixed;left:13px;bottom:13px;z-index:270;padding:7px 12px;border-radius:999px;background:var(--wc-strong,#172033);color:var(--wc-button,#fff);font-size:.5rem;font-weight:900;letter-spacing:.17em}.preview-frame--cinematic .wcoll-preview-label{position:absolute}.wcoll-lightbox{position:fixed;inset:0;z-index:320;display:grid;place-items:center;padding:22px;background:rgba(6,10,20,.92);opacity:0;transition:.18s ease}.preview-frame--cinematic .wcoll-lightbox{position:absolute}.wcoll-lightbox[hidden]{display:none}.wcoll-lightbox.is-open{opacity:1}.wcoll-lightbox img{max-width:92%;max-height:88%;width:auto;height:auto;object-fit:contain;box-shadow:0 28px 80px rgba(0,0,0,.42)}.wcoll-lightbox button{position:absolute;right:16px;top:16px;width:42px;height:42px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:1.35rem}.wcoll,.wcoll *{scrollbar-width:none}.wcoll::-webkit-scrollbar,.wcoll *::-webkit-scrollbar{display:none;width:0;height:0}

/* TERRACOTTA ARCH — Mediterranean architecture, asymmetrical warm layout */
.wcoll--terracotta{--wc-bg:#f3e3cf;--wc-surface:#fbf4e9;--wc-ink:#3a302a;--wc-muted:#796b60;--wc-line:#9f775f;--wc-accent:#b45f43;--wc-strong:#3d312b;--wc-button:#fff8ef}.wcoll-nav--terracotta{background:rgba(246,232,213,.93);color:#49392f}.wcoll-cover--terracotta{grid-template-columns:1fr;padding:22px;background:linear-gradient(145deg,#f8edde,#e2b792)}.wcoll-terracotta__copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;max-width:100%;padding:14px}.wcoll-terracotta__copy>p{font-size:.51rem;font-weight:900;letter-spacing:.2em;color:#8e4e3a}.wcoll-terracotta__copy h1{display:grid;margin:6px 0 9px;font-family:Georgia,serif;font-size:clamp(2.8rem,min(14vw,8.6vh),4.25rem);line-height:.85;font-weight:500}.wcoll-terracotta__copy h1 em{font-size:.48em;color:#b45f43;font-weight:400;margin:.12em 0}.wcoll-terracotta__copy>span{font-size:.65rem;font-weight:750;color:#6e5141}.wcoll-terracotta__copy>div{display:grid;gap:1px;margin:14px 0}.wcoll-terracotta__copy>div small{font-size:.47rem;color:#796b60}.wcoll-terracotta__copy>div strong{font-family:Georgia,serif;font-size:.95rem}.wcoll-terracotta__copy button{border:0;border-radius:999px;background:#3d312b;color:#fff8ef;padding:10px 15px;font-size:.68rem;font-weight:850}.wcoll-terracotta__arch{position:absolute;right:-12%;bottom:-15%;width:66%;height:68%;overflow:hidden;border-radius:48% 48% 0 0;background:#b45f43;box-shadow:0 28px 60px rgba(82,48,31,.24)}.wcoll-terracotta__arch img{height:100%;object-fit:cover;mix-blend-mode:multiply;opacity:.64}.wcoll-terracotta__arch:after{content:"";position:absolute;inset:10%;border:2px solid rgba(255,245,230,.55);border-radius:48% 48% 0 0}.wcoll-terracotta__arch span{position:absolute;right:17%;bottom:19%;color:#fff6e9;font-size:.52rem;font-weight:900;letter-spacing:.18em}.wcoll-terracotta__sun{position:absolute;right:24%;top:8%;width:88px;height:88px;border-radius:50%;background:rgba(255,240,203,.58)}.wcoll-terracotta__leaf{position:absolute;left:-45px;bottom:20px;width:150px;height:250px;border:3px solid rgba(95,112,69,.45);border-radius:50%;transform:rotate(28deg)}.wcoll-main--terracotta{background:#f6ead8}.wcoll-terracotta-couple__intro h2,.wcoll-terracotta-event__title h2,.wcoll-terracotta-gallery__heading h2{font-family:Georgia,serif;font-size:clamp(2.15rem,9vw,4.5rem);line-height:1}.wcoll-terracotta-couple__intro p,.wcoll-terracotta-event__title p,.wcoll-terracotta-gallery__heading p{color:#796b60}.wcoll-terracotta-couple__cards{display:grid;gap:20px;margin-top:32px}.wcoll-terracotta-couple__cards article{position:relative;padding:0 0 24px;border-bottom:1px solid rgba(80,57,45,.25)}.wcoll-terracotta-couple__cards img{height:330px;object-fit:cover;border-radius:48% 48% 4px 4px}.wcoll-terracotta-couple__cards small{display:block;margin-top:14px;font-size:.53rem;letter-spacing:.16em;color:#a4583e}.wcoll-terracotta-couple__cards h3{margin:5px 0;font-family:Georgia,serif;font-size:1.75rem}.wcoll-terracotta-couple__cards p{margin:0;color:#796b60;font-size:.78rem}.wcoll-terracotta-event{background:#b45f43;color:#fff8ef}.wcoll-terracotta-event__title p{color:#f5d7c2}.wcoll-terracotta-event__tickets{display:grid;gap:12px;margin-top:28px}.wcoll-terracotta-event__tickets article{position:relative;padding:24px;border:1px solid rgba(255,248,239,.45);background:rgba(75,45,34,.15)}.wcoll-terracotta-event__tickets article>b{position:absolute;right:18px;top:12px;font-family:Georgia,serif;font-size:2.5rem;opacity:.22}.wcoll-terracotta-event__tickets small{font-size:.55rem;letter-spacing:.18em}.wcoll-terracotta-event__tickets h3{margin:11px 0 5px;font-family:Georgia,serif;font-size:1.2rem}.wcoll-terracotta-event__tickets p{font-size:.75rem;color:#f5d7c2}.wcoll-terracotta-event__tickets a{font-size:.63rem;font-weight:850}.wcoll-terracotta-event .wcoll-countdown div{border-color:rgba(255,255,255,.38);background:rgba(70,38,26,.17)}.wcoll-terracotta-story blockquote{margin:0 auto 42px;font-family:Georgia,serif;font-size:1.5rem;line-height:1.35;text-align:center;color:#734835}.wcoll-terracotta-story__timeline{display:grid;gap:14px}.wcoll-terracotta-story__item{display:grid;grid-template-columns:70px 1fr;gap:15px;padding:18px;border-left:4px solid #b45f43;background:#fbf4e9}.wcoll-terracotta-story__item time{font-family:Georgia,serif;font-size:1.35rem;color:#b45f43}.wcoll-terracotta-story__item small{font-size:.5rem}.wcoll-terracotta-story__item h3{margin:3px 0}.wcoll-terracotta-story__item p{margin:0;color:#796b60;font-size:.77rem}.wcoll-terracotta-gallery{background:#e9cfb0}.wcoll-gallery-grid--arch .wcoll-gallery-item{border-radius:46% 46% 4px 4px;min-height:210px}.wcoll-gallery-grid--arch .wcoll-gallery-item:nth-child(1),.wcoll-gallery-grid--arch .wcoll-gallery-item:nth-child(4){grid-row:span 2;min-height:430px}.wcoll-gallery-grid--arch .wcoll-gallery-item span{color:#fff}.wcoll-terracotta-location{display:grid;gap:26px;background:#fbf4e9}.wcoll-terracotta-location small{font-size:.55rem;letter-spacing:.2em}.wcoll-terracotta-location h2{margin:10px 0;font-family:Georgia,serif;font-size:2.6rem}.wcoll-terracotta-location p{color:#796b60}.wcoll-terracotta-location a{display:inline-flex;padding:10px 15px;border-radius:999px;background:#3d312b;color:#fff8ef;font-size:.7rem;font-weight:850}.wcoll-terracotta-location__stamp{display:grid;place-items:center;align-self:center;justify-self:center;width:180px;height:180px;border:2px dashed #b45f43;border-radius:50%;text-align:center;transform:rotate(-8deg)}.wcoll-terracotta-location__stamp b{font-family:Georgia,serif;font-size:1.2rem}.wcoll-terracotta-location__stamp span{font-size:.65rem}.wcoll-interaction--terracotta{background:#e9cfb0}.wcoll-closing--terracotta{background:#3d312b;color:#fff8ef}

/* AURORA GLASS — luminous gradients, translucent cards, digital composition */
.wcoll--aurora{--wc-bg:#17113d;--wc-surface:rgba(255,255,255,.1);--wc-ink:#eefaff;--wc-muted:#bfcae8;--wc-line:#87e9f0;--wc-accent:#74f3e2;--wc-strong:#0d1334;--wc-button:#fff}.wcoll-nav--aurora{background:rgba(12,18,50,.82);color:#f1fbff;border-color:rgba(116,243,226,.22)}.wcoll-cover--aurora{place-items:center;padding:18px;background:radial-gradient(circle at 10% 10%,rgba(109,85,255,.72),transparent 36%),radial-gradient(circle at 87% 20%,rgba(50,233,228,.5),transparent 34%),linear-gradient(155deg,#141033,#27135a 64%,#0d355c)}.wcoll-aurora__ribbon{position:absolute;width:120%;height:27%;border-radius:50%;filter:blur(25px);opacity:.42;transform:rotate(-18deg)}.wcoll-aurora__ribbon--one{top:4%;left:-20%;background:linear-gradient(90deg,#753bff,#34e2d3)}.wcoll-aurora__ribbon--two{bottom:5%;right:-25%;background:linear-gradient(90deg,#ff62b7,#6948ff)}.wcoll-aurora__orb{position:absolute;width:210px;height:210px;border-radius:50%;right:-80px;top:25%;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);box-shadow:inset 0 0 50px rgba(255,255,255,.1)}.wcoll-aurora__glass{position:relative;z-index:3;display:grid;place-items:center;width:100%;max-width:520px;padding:29px 20px;text-align:center;border:1px solid rgba(255,255,255,.32);border-radius:28px;background:rgba(8,14,45,.38);box-shadow:0 35px 85px rgba(1,4,24,.42);backdrop-filter:blur(24px)}.wcoll-aurora__glass>small{font-size:.5rem;font-weight:900;letter-spacing:.2em;color:#74f3e2}.wcoll-aurora__glass h1{margin:16px 0 8px;font-family:Georgia,serif;font-size:clamp(2.1rem,min(10.5vw,7.8vh),4.1rem);line-height:.95;font-weight:500}.wcoll-aurora__glass h1 i{font-size:.5em;color:#74f3e2}.wcoll-aurora__glass>p{font-size:.68rem;color:#d8d8ff}.wcoll-aurora__glass>div{display:grid;margin:14px 0}.wcoll-aurora__glass>div span{font-size:.42rem;letter-spacing:.18em;color:#74f3e2}.wcoll-aurora__glass>div strong{font-size:.9rem}.wcoll-aurora__glass button{border:1px solid rgba(255,255,255,.35);border-radius:999px;background:linear-gradient(90deg,#74f3e2,#9d8cff);color:#10143b;padding:10px 16px;font-size:.65rem;font-weight:900}.wcoll-aurora__portrait{display:none}.wcoll-main--aurora{background:linear-gradient(170deg,#16103b,#0d173e);color:#eefaff}.wcoll-aurora-heading span{font-size:.52rem;font-weight:900;letter-spacing:.19em;color:#74f3e2}.wcoll-aurora-heading h2{margin:12px 0;font-size:clamp(2.2rem,9vw,4.8rem);line-height:.94;letter-spacing:-.055em}.wcoll-aurora-heading p{color:#bfcae8}.wcoll-aurora-couple__grid{display:grid;gap:16px;margin-top:30px}.wcoll-aurora-couple__grid article{padding:16px;border:1px solid rgba(135,233,240,.24);border-radius:24px;background:rgba(255,255,255,.07);backdrop-filter:blur(18px)}.wcoll-aurora-couple__grid article>div{overflow:hidden;border-radius:17px;aspect-ratio:4/5}.wcoll-aurora-couple__grid img{height:100%;object-fit:cover}.wcoll-aurora-couple__grid small{display:block;margin-top:14px;font-size:.47rem;letter-spacing:.18em;color:#74f3e2}.wcoll-aurora-couple__grid h3{margin:6px 0;font-family:Georgia,serif;font-size:1.55rem}.wcoll-aurora-couple__grid p{color:#bfcae8;font-size:.75rem}.wcoll-aurora-event{background:radial-gradient(circle at 80% 20%,rgba(91,74,210,.38),transparent 38%)}.wcoll-aurora-event__dashboard{display:grid;gap:12px;margin-top:28px}.wcoll-aurora-event__dashboard article{padding:22px;border:1px solid rgba(135,233,240,.22);border-radius:22px;background:rgba(255,255,255,.07)}.wcoll-aurora-event__dashboard header{display:flex;justify-content:space-between;color:#74f3e2;font-size:.53rem;letter-spacing:.14em}.wcoll-aurora-event__dashboard h3{font-size:1.15rem}.wcoll-aurora-event__dashboard p{color:#bfcae8}.wcoll-aurora-event__dashboard a{color:#74f3e2;font-size:.62rem;font-weight:900}.wcoll-aurora-story__orbit{position:relative;display:grid;gap:14px;margin-top:32px}.wcoll-aurora-story__orbit>i{position:absolute;left:25px;top:0;bottom:0;width:1px;background:linear-gradient(#74f3e2,transparent)}.wcoll-aurora-story__node{position:relative;display:grid;grid-template-columns:56px 1fr;gap:13px;padding:17px 17px 17px 0}.wcoll-aurora-story__node time{position:relative;z-index:2;display:grid;place-items:center;width:52px;height:52px;border:1px solid #74f3e2;border-radius:50%;background:#16103b;font-size:.62rem}.wcoll-aurora-story__node small{color:#74f3e2}.wcoll-aurora-story__node h3{margin:3px 0}.wcoll-aurora-story__node p{color:#bfcae8;font-size:.75rem}.wcoll-aurora-story blockquote{margin:36px 0 0;padding:24px;border:1px solid rgba(255,255,255,.16);border-radius:22px;font-family:Georgia,serif;font-size:1.2rem;color:#d9dcff}.wcoll-gallery-grid--glass .wcoll-gallery-item{min-height:190px;border-radius:22px;border:1px solid rgba(255,255,255,.2);box-shadow:0 18px 34px rgba(0,0,0,.2)}.wcoll-gallery-grid--glass .wcoll-gallery-item:nth-child(3){grid-column:1/-1;min-height:270px}.wcoll-gallery-grid--glass span{color:#fff}.wcoll-aurora-location{display:grid;gap:26px;align-items:center;background:rgba(255,255,255,.04)}.wcoll-aurora-location span{font-size:.5rem;color:#74f3e2;letter-spacing:.18em}.wcoll-aurora-location h2{font-size:2.5rem}.wcoll-aurora-location p{color:#bfcae8}.wcoll-aurora-location a{display:inline-flex;margin-top:12px;padding:10px 14px;border-radius:999px;background:#74f3e2;color:#10143b;font-size:.64rem;font-weight:900}.wcoll-aurora-location__radar{position:relative;display:grid;place-items:center;width:230px;height:230px;margin:auto;border:1px solid rgba(116,243,226,.25);border-radius:50%}.wcoll-aurora-location__radar i{position:absolute;inset:20%;border:1px solid rgba(116,243,226,.25);border-radius:50%}.wcoll-aurora-location__radar i:nth-child(2){inset:38%}.wcoll-aurora-location__radar b{color:#74f3e2}.wcoll-interaction--aurora>div{border-radius:22px;background:rgba(255,255,255,.07);backdrop-filter:blur(16px)}.wcoll-closing--aurora{background:radial-gradient(circle at 50% 40%,#483181,#121034);color:#fff}

/* MONOCHROME ATELIER — high-fashion editorial, strict black/white grid */
.wcoll--atelier{--wc-bg:#f4f4f0;--wc-surface:#fff;--wc-ink:#101010;--wc-muted:#5c5c58;--wc-line:#111;--wc-accent:#111;--wc-strong:#111;--wc-button:#fff}.wcoll-nav--atelier{background:rgba(247,247,244,.96);color:#111;border-color:#111}.wcoll-nav--atelier .wcoll-brand b{border-radius:0}.wcoll-cover--atelier{grid-template-columns:44px 1fr;background:#f6f6f2}.wcoll-cover--atelier>aside{display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:14px 6px;background:#111;color:#fff}.wcoll-cover--atelier>aside span{writing-mode:vertical-rl;font-size:.42rem;font-weight:900;letter-spacing:.15em}.wcoll-cover--atelier>aside b{font-family:Georgia,serif;font-size:1.8rem}.wcoll-cover--atelier>aside small{writing-mode:vertical-rl;font-size:.42rem}.wcoll-atelier__title{display:flex;flex-direction:column;justify-content:center;padding:22px}.wcoll-atelier__title>p{font-size:.53rem;font-weight:900;letter-spacing:.2em}.wcoll-atelier__title h1{display:grid;margin:12px 0;font-family:Arial,sans-serif;font-size:clamp(2.75rem,min(15vw,8vh),4.8rem);line-height:.78;letter-spacing:-.085em;text-transform:uppercase}.wcoll-atelier__title h1 i{font-size:.65em;font-style:normal;font-weight:300}.wcoll-atelier__title>div{display:grid;gap:2px;margin:14px 0}.wcoll-atelier__title>div small{font-size:.43rem}.wcoll-atelier__title>div strong{font-family:Georgia,serif;font-size:.9rem}.wcoll-atelier__title button{align-self:flex-start;border:0;background:#111;color:#fff;padding:10px 16px;font-size:.6rem;font-weight:900;letter-spacing:.14em}.wcoll-cover--atelier>figure{display:none}.wcoll-main--atelier{background:#f4f4f0}.wcoll-main--atelier .wcoll-section{border-bottom:1px solid #111}.wcoll-atelier-couple>header span,.wcoll-atelier-event>header span,.wcoll-atelier-story>header span,.wcoll-atelier-gallery>header span{font-size:.53rem;font-weight:900;letter-spacing:.17em}.wcoll-atelier-couple>header h2,.wcoll-atelier-event>header h2,.wcoll-atelier-story>header h2,.wcoll-atelier-gallery>header h2{font-family:Arial,sans-serif;font-size:clamp(2.35rem,10vw,5.4rem);line-height:.88;letter-spacing:-.07em;text-transform:uppercase}.wcoll-atelier-couple__feature{display:grid;gap:0;margin-top:32px;border:1px solid #111}.wcoll-atelier-couple__feature figure{margin:0;position:relative}.wcoll-atelier-couple__feature img{height:320px;object-fit:cover;filter:grayscale(1) contrast(1.1)}.wcoll-atelier-couple__feature figcaption{position:absolute;left:10px;bottom:8px;background:#fff;padding:4px 7px;font-size:.48rem;font-weight:900}.wcoll-atelier-couple__feature article{padding:24px;background:#fff;border-top:1px solid #111}.wcoll-atelier-couple__feature small{font-size:.5rem}.wcoll-atelier-couple__feature h3{margin:10px 0;font-family:Georgia,serif;font-size:1.75rem}.wcoll-atelier-couple__feature p{font-size:.76rem;color:#5c5c58}.wcoll-atelier-event__rows{margin-top:30px;border-top:2px solid #111}.wcoll-atelier-event__rows article{display:grid;grid-template-columns:42px 1fr;gap:10px;padding:18px 0;border-bottom:1px solid #111}.wcoll-atelier-event__rows article>b{font-size:1.3rem}.wcoll-atelier-event__rows article small{font-size:.47rem;letter-spacing:.14em}.wcoll-atelier-event__rows article h3{margin:3px 0;font-family:Georgia,serif;font-size:1rem}.wcoll-atelier-event__rows article>strong,.wcoll-atelier-event__rows article>p,.wcoll-atelier-event__rows article>a{grid-column:2;font-size:.7rem}.wcoll-atelier-event__rows article>p{color:#5c5c58}.wcoll-atelier-story__columns{display:grid;gap:20px;margin-top:28px}.wcoll-atelier-story blockquote{margin:0;padding:22px;background:#111;color:#fff;font-family:Georgia,serif;font-size:1.25rem}.wcoll-atelier-story__columns>p{font-family:Georgia,serif;font-size:1.2rem;line-height:1.6}.wcoll-atelier-story__entry{display:grid;grid-template-columns:64px 1fr;gap:10px;padding:14px 0;border-top:1px solid #111}.wcoll-atelier-story__entry time{font-weight:900}.wcoll-atelier-story__entry h3{margin:0}.wcoll-atelier-story__entry p{font-size:.73rem;color:#5c5c58}.wcoll-gallery-grid--atelier{grid-template-columns:1fr;gap:5px}.wcoll-gallery-grid--atelier .wcoll-gallery-item{min-height:250px;border:1px solid #111}.wcoll-gallery-grid--atelier .wcoll-gallery-item img{filter:grayscale(1) contrast(1.1)}.wcoll-gallery-grid--atelier span{background:#fff;color:#111;padding:3px 6px}.wcoll-atelier-location{display:grid;gap:22px;background:#111;color:#fff}.wcoll-atelier-location h2{font-family:Arial,sans-serif;font-size:3rem;line-height:.9;text-transform:uppercase}.wcoll-atelier-location a{display:inline-block;margin-top:12px;border:1px solid #fff;padding:9px 12px;font-size:.6rem;font-weight:900}.wcoll-interaction--atelier{background:#e7e7e2}.wcoll-interaction--atelier>div{border:1px solid #111;border-radius:0}.wcoll-closing--atelier{background:#fff;color:#111;border-top:10px solid #111}

/* GARDEN LETTERPRESS — botanical paper, stamps, handwritten composition */
.wcoll--letterpress{--wc-bg:#eee8d8;--wc-surface:#f8f4e8;--wc-ink:#34402d;--wc-muted:#716e60;--wc-line:#758266;--wc-accent:#9c7c4f;--wc-strong:#405238;--wc-button:#fffdf5}.wcoll-nav--letterpress{background:rgba(246,242,230,.95);color:#405238;border-color:rgba(77,97,66,.32)}.wcoll-cover--letterpress{place-items:center;padding:20px;background-color:#e8e1cf;background-image:radial-gradient(rgba(71,88,60,.08) 1px,transparent 1px);background-size:8px 8px}.wcoll-letterpress__paper{position:relative;z-index:3;display:grid;place-items:center;width:100%;max-width:520px;padding:29px 18px;text-align:center;background:#f8f4e8;border:1px solid #758266;box-shadow:0 24px 45px rgba(59,55,40,.16)}.wcoll-letterpress__paper:before{content:"";position:absolute;inset:8px;border:1px solid rgba(117,130,102,.35)}.wcoll-letterpress__paper>span{font-size:.5rem;font-weight:900;letter-spacing:.2em}.wcoll-letterpress__paper h1{position:relative;margin:18px 0 5px;font-family:Georgia,serif;font-size:clamp(2.45rem,min(12vw,7.2vh),4.4rem);line-height:.92;font-weight:500}.wcoll-letterpress__paper h1 em{color:#9c7c4f}.wcoll-letterpress__paper>p{font-family:Georgia,serif;font-style:italic;color:#9c7c4f}.wcoll-letterpress__paper hr{width:55%;border:0;border-top:1px solid #758266}.wcoll-letterpress__paper>strong{font-size:.65rem;letter-spacing:.11em}.wcoll-letterpress__paper>div{display:grid;margin:13px 0}.wcoll-letterpress__paper>div small{font-size:.44rem}.wcoll-letterpress__paper>div b{font-family:Georgia,serif}.wcoll-letterpress__paper button{position:relative;border:1px solid #405238;background:#405238;color:#fffdf5;padding:9px 14px;font-size:.62rem;font-weight:850}.wcoll-letterpress__paper>i{position:absolute;right:17px;bottom:13px;color:#9c7c4f}.wcoll-letterpress__botanical{position:absolute;width:150px;height:260px;border:2px solid rgba(75,99,62,.35);border-radius:50%}.wcoll-letterpress__botanical--left{left:-60px;bottom:-40px;transform:rotate(28deg)}.wcoll-letterpress__botanical--right{right:-65px;top:-40px;transform:rotate(-24deg)}.wcoll-main--letterpress{background:#eee8d8;background-image:linear-gradient(rgba(63,74,53,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(63,74,53,.035) 1px,transparent 1px);background-size:22px 22px}.wcoll-letterpress-title small{font-size:.52rem;font-weight:900;letter-spacing:.18em;color:#9c7c4f}.wcoll-letterpress-title h2{margin:12px 0;font-family:Georgia,serif;font-size:clamp(2.2rem,9vw,4.5rem);line-height:1}.wcoll-letterpress-title p{color:#716e60}.wcoll-letterpress-couple__cards{display:grid;gap:22px;margin-top:30px}.wcoll-letterpress-couple__cards article{padding:13px 13px 22px;background:#f8f4e8;box-shadow:0 14px 28px rgba(72,68,53,.12);transform:rotate(-1.3deg)}.wcoll-letterpress-couple__cards article:last-child{transform:rotate(1.3deg)}.wcoll-letterpress-couple__cards img{height:300px;object-fit:cover}.wcoll-letterpress-couple__cards span{display:block;margin-top:12px;font-size:.48rem;letter-spacing:.16em}.wcoll-letterpress-couple__cards h3{margin:6px 0;font-family:Georgia,serif;font-size:1.65rem}.wcoll-letterpress-couple__cards p{font-size:.74rem;color:#716e60}.wcoll-letterpress-couple__amp{display:none}.wcoll-letterpress-event{background:#405238;color:#fffdf5}.wcoll-letterpress-event__stamps{display:grid;gap:15px;margin-top:27px}.wcoll-letterpress-event__stamps article{position:relative;padding:24px;border:1px dashed rgba(255,255,255,.55);background:rgba(255,255,255,.06)}.wcoll-letterpress-event__stamps article:after{content:"✦";position:absolute;right:15px;top:13px;color:#d9c297}.wcoll-letterpress-event__stamps span{font-size:.52rem;letter-spacing:.17em}.wcoll-letterpress-event__stamps h3{font-family:Georgia,serif;font-size:1.2rem}.wcoll-letterpress-event__stamps p{color:#d8ddcf}.wcoll-letterpress-event__stamps a{font-size:.62rem;font-weight:900}.wcoll-letterpress-event .wcoll-countdown div{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.35)}.wcoll-letterpress-story__letter{padding:28px 22px;background:#f8f4e8;box-shadow:0 15px 32px rgba(63,57,40,.12)}.wcoll-letterpress-story__letter small{font-size:.5rem;letter-spacing:.17em}.wcoll-letterpress-story__letter h2{font-family:Georgia,serif;font-size:2rem}.wcoll-letterpress-story__letter p{font-family:Georgia,serif;font-size:1.1rem;line-height:1.7}.wcoll-letterpress-story__letter blockquote{margin:24px 0;padding-left:16px;border-left:3px solid #9c7c4f;color:#716e60}.wcoll-letterpress-story__letter span{font-family:Georgia,serif;font-style:italic}.wcoll-letterpress-story__notes{display:grid;gap:10px;margin-top:22px}.wcoll-letterpress-story__note{padding:17px;background:#e1dbc7}.wcoll-letterpress-story__note time{color:#9c7c4f;font-weight:900}.wcoll-letterpress-story__note h3{margin:5px 0}.wcoll-letterpress-story__note p{font-size:.74rem;color:#716e60}.wcoll-gallery-grid--letterpress{gap:17px;padding-top:15px}.wcoll-gallery-grid--letterpress .wcoll-gallery-item{padding:9px 9px 28px;background:#f8f4e8;box-shadow:0 12px 25px rgba(61,55,42,.14);transform:rotate(-2deg)}.wcoll-gallery-grid--letterpress .wcoll-gallery-item:nth-child(even){transform:rotate(2deg)}.wcoll-gallery-grid--letterpress span{right:50%;bottom:7px;transform:translateX(50%);color:#405238}.wcoll-letterpress-location{display:grid;gap:24px;align-items:center}.wcoll-letterpress-location__seal{display:grid;place-items:center;width:130px;height:130px;margin:auto;border:2px solid #9c7c4f;border-radius:50%;font-family:Georgia,serif;font-size:3rem;color:#9c7c4f}.wcoll-letterpress-location small{font-size:.52rem;letter-spacing:.17em}.wcoll-letterpress-location h2{font-family:Georgia,serif;font-size:2.5rem}.wcoll-letterpress-location p{color:#716e60}.wcoll-letterpress-location a{display:inline-flex;margin-top:10px;padding:9px 13px;background:#405238;color:#fff;font-size:.63rem;font-weight:900}.wcoll-interaction--letterpress>div{box-shadow:0 10px 24px rgba(63,57,40,.08)}.wcoll-closing--letterpress{background:#405238;color:#fffdf5}

/* CELESTIAL ORBIT — moon, stars, circular portals and dreamy night */
.wcoll--celestial{--wc-bg:#160d35;--wc-surface:rgba(255,255,255,.06);--wc-ink:#fff4da;--wc-muted:#c6bddb;--wc-line:#e5c47d;--wc-accent:#e8c77e;--wc-strong:#110a2a;--wc-button:#fff4da}.wcoll-nav--celestial{background:rgba(18,10,45,.9);color:#fff4da;border-color:rgba(232,199,126,.22)}.wcoll-cover--celestial{place-items:center;padding:22px;background:radial-gradient(circle at 50% 48%,#442470 0,#23124e 40%,#100a2b 75%)}.wcoll-celestial__stars{position:absolute;inset:0}.wcoll-celestial__stars i{position:absolute;left:var(--x);top:var(--y);width:3px;height:3px;border-radius:50%;background:#ffe7b1;animation:wcollTwinkle var(--d) ease-in-out infinite alternate}.wcoll-celestial__moon{position:absolute;right:-62px;top:8%;width:190px;height:190px;border:1px solid rgba(232,199,126,.45);border-radius:50%;display:grid;place-items:center}.wcoll-celestial__moon:before{content:"";position:absolute;inset:24px;border:1px solid rgba(232,199,126,.25);border-radius:50%}.wcoll-celestial__moon span{width:92px;height:92px;border-radius:50%;background:#f1d8a5;box-shadow:0 0 45px rgba(241,216,165,.25)}.wcoll-celestial__moon span:after{content:"";display:block;width:82px;height:92px;margin-left:30px;border-radius:50%;background:#24124e}.wcoll-celestial__copy{position:relative;z-index:3;display:grid;place-items:center;text-align:center;max-width:560px}.wcoll-celestial__copy>p{font-size:.5rem;font-weight:900;letter-spacing:.24em;color:#e8c77e}.wcoll-celestial__copy h1{display:grid;margin:14px 0 8px;font-family:Georgia,serif;font-size:clamp(2.9rem,min(14vw,8.4vh),4.8rem);line-height:.83;font-weight:500}.wcoll-celestial__copy h1 em{font-size:.44em;color:#e8c77e}.wcoll-celestial__copy>strong{font-size:.65rem;letter-spacing:.1em}.wcoll-celestial__copy>div{display:grid;margin:14px 0}.wcoll-celestial__copy>div small{font-size:.42rem;letter-spacing:.18em;color:#e8c77e}.wcoll-celestial__copy>div b{font-family:Georgia,serif;font-size:.95rem}.wcoll-celestial__copy button{border:1px solid #e8c77e;border-radius:999px;background:transparent;color:#fff4da;padding:10px 16px;font-size:.65rem;font-weight:900}.wcoll-main--celestial{background:linear-gradient(#160d35,#25134f);color:#fff4da}.wcoll-celestial-title span{font-size:.52rem;font-weight:900;letter-spacing:.19em;color:#e8c77e}.wcoll-celestial-title h2{margin:12px 0;font-family:Georgia,serif;font-size:clamp(2.25rem,9vw,4.7rem);line-height:.96}.wcoll-celestial-title p{color:#c6bddb}.wcoll-celestial-couple__orbit{display:grid;gap:24px;margin-top:34px}.wcoll-celestial-couple__orbit article{text-align:center}.wcoll-celestial-couple__orbit article>div{position:relative;width:210px;height:210px;margin:auto;border:1px solid rgba(232,199,126,.45);border-radius:50%;padding:10px}.wcoll-celestial-couple__orbit article>div:before{content:"";position:absolute;inset:-15px;border:1px dashed rgba(232,199,126,.2);border-radius:50%}.wcoll-celestial-couple__orbit img{height:100%;object-fit:cover;border-radius:50%}.wcoll-celestial-couple__orbit small{display:block;margin-top:17px;color:#e8c77e;font-size:.5rem;letter-spacing:.17em}.wcoll-celestial-couple__orbit h3{margin:6px 0;font-family:Georgia,serif;font-size:1.65rem}.wcoll-celestial-couple__orbit p{color:#c6bddb;font-size:.74rem}.wcoll-celestial-couple__orbit>i{display:none}.wcoll-celestial-event__planets{display:grid;gap:18px;margin-top:30px}.wcoll-celestial-event__planets article{position:relative;padding:25px;border:1px solid rgba(232,199,126,.24);border-radius:24px;background:rgba(255,255,255,.035)}.wcoll-celestial-event__planets article>div{position:absolute;right:18px;top:17px;display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(232,199,126,.5);border-radius:50%}.wcoll-celestial-event__planets small{color:#e8c77e;font-size:.5rem;letter-spacing:.17em}.wcoll-celestial-event__planets h3{margin:11px 0 5px;font-family:Georgia,serif;font-size:1.25rem}.wcoll-celestial-event__planets p{color:#c6bddb}.wcoll-celestial-event__planets a{font-size:.6rem;color:#e8c77e;font-weight:900}.wcoll-celestial-story__map{position:relative;display:grid;gap:20px;margin-top:30px}.wcoll-celestial-story__map:before{content:"";position:absolute;left:23px;top:20px;bottom:20px;border-left:1px dashed rgba(232,199,126,.38)}.wcoll-celestial-story__star{position:relative;display:grid;grid-template-columns:48px 1fr;gap:15px}.wcoll-celestial-story__star time{position:relative;z-index:2;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#e8c77e;color:#211143;font-size:.6rem;font-weight:900}.wcoll-celestial-story__star h3{margin:0 0 5px}.wcoll-celestial-story__star p{color:#c6bddb;font-size:.75rem}.wcoll-celestial-story blockquote{margin:38px 0 0;padding:26px;border:1px solid rgba(232,199,126,.28);border-radius:50px 12px 50px 12px;font-family:Georgia,serif;font-size:1.15rem;color:#e9def8}.wcoll-gallery-grid--celestial .wcoll-gallery-item{min-height:200px;border-radius:50%;border:1px solid rgba(232,199,126,.4);padding:8px;background:transparent}.wcoll-gallery-grid--celestial .wcoll-gallery-item img{border-radius:50%}.wcoll-gallery-grid--celestial .wcoll-gallery-item:nth-child(1){grid-column:1/-1;width:78%;justify-self:center;aspect-ratio:1}.wcoll-gallery-grid--celestial span{right:50%;bottom:50%;transform:translate(50%,50%);color:#fff;text-shadow:0 1px 8px #000}.wcoll-celestial-location{display:grid;gap:28px;align-items:center;background:rgba(255,255,255,.03)}.wcoll-celestial-location__planet{position:relative;display:grid;place-items:center;width:210px;height:210px;margin:auto;border:1px solid rgba(232,199,126,.35);border-radius:50%}.wcoll-celestial-location__planet i{position:absolute;inset:22%;border:1px solid rgba(232,199,126,.3);border-radius:50%}.wcoll-celestial-location__planet span{color:#e8c77e}.wcoll-celestial-location small{font-size:.5rem;color:#e8c77e;letter-spacing:.17em}.wcoll-celestial-location h2{font-family:Georgia,serif;font-size:2.55rem}.wcoll-celestial-location p{color:#c6bddb}.wcoll-celestial-location a{display:inline-flex;margin-top:10px;padding:9px 13px;border:1px solid #e8c77e;border-radius:999px;color:#fff4da;font-size:.62rem;font-weight:900}.wcoll-interaction--celestial>div{border-radius:28px;background:rgba(255,255,255,.045)}.wcoll-closing--celestial{background:radial-gradient(circle at 50% 35%,#493078,#0f0927);color:#fff4da}

@keyframes wcollTwinkle{from{opacity:.25;transform:scale(.7)}to{opacity:1;transform:scale(1.35)}}

/* Desktop/public enhancements. Mobile remains the baseline. */
@media(min-width:800px){
  .wcoll-nav{height:64px;min-height:64px;padding:0 28px}.wcoll-brand span{display:block}.wcoll-nav nav{gap:24px}.wcoll-nav nav button{font-size:.56rem;padding-block:22px}.wcoll-cover{min-height:calc(100svh - 64px);height:calc(100svh - 64px)}.wcoll-section{padding:104px clamp(42px,7vw,110px)}.wcoll-gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.wcoll-interaction{grid-template-columns:repeat(3,minmax(0,1fr))}.wcoll-terracotta__copy{padding-left:7vw}.wcoll-cover--terracotta{grid-template-columns:1.05fr .95fr;padding:0}.wcoll-terracotta__arch{position:relative;right:auto;bottom:auto;align-self:stretch;width:100%;height:100%;border-radius:48% 0 0 0}.wcoll-terracotta-couple__cards{grid-template-columns:1fr 1fr}.wcoll-terracotta-couple__cards img{height:520px}.wcoll-terracotta-event__tickets{grid-template-columns:1fr 1fr}.wcoll-terracotta-story__timeline{grid-template-columns:repeat(3,1fr)}.wcoll-terracotta-story__item{grid-template-columns:1fr;border-left:0;border-top:4px solid #b45f43}.wcoll-terracotta-location{grid-template-columns:1fr .65fr}.wcoll-aurora__glass{margin-left:8vw;justify-self:start}.wcoll-cover--aurora{grid-template-columns:1.1fr .9fr}.wcoll-aurora__portrait{display:block;position:relative;z-index:2;align-self:stretch;overflow:hidden;border-radius:42% 0 0 42%;border-left:1px solid rgba(255,255,255,.22)}.wcoll-aurora__portrait img{height:100%;object-fit:cover;mix-blend-mode:screen;opacity:.55}.wcoll-aurora-couple__grid{grid-template-columns:1fr 1fr}.wcoll-aurora-event__dashboard{grid-template-columns:1fr 1fr}.wcoll-aurora-story__orbit{grid-template-columns:repeat(3,1fr)}.wcoll-aurora-story__orbit>i{left:0;right:0;top:25px;bottom:auto;width:auto;height:1px}.wcoll-aurora-story__node{grid-template-columns:1fr;padding:0 18px;text-align:center}.wcoll-aurora-story__node time{margin:auto}.wcoll-aurora-location{grid-template-columns:1fr .8fr}.wcoll-cover--atelier{grid-template-columns:70px .85fr 1.15fr}.wcoll-cover--atelier>figure{display:block;margin:0;position:relative;overflow:hidden}.wcoll-cover--atelier>figure img{height:100%;object-fit:cover;filter:grayscale(1) contrast(1.1)}.wcoll-cover--atelier>figure figcaption{position:absolute;right:14px;bottom:12px;background:#fff;padding:5px 9px;font-size:.52rem;font-weight:900}.wcoll-atelier__title{padding:6vw}.wcoll-atelier-couple__feature{grid-template-columns:1fr 1fr}.wcoll-atelier-couple__feature article{border-top:0;border-left:1px solid #111}.wcoll-atelier-couple__feature figure:last-child{grid-column:2}.wcoll-atelier-couple__feature article:nth-child(3){grid-row:2;grid-column:1;border-left:0;border-top:1px solid #111}.wcoll-atelier-event__rows article{grid-template-columns:60px 1.1fr .6fr 1fr auto;align-items:center}.wcoll-atelier-event__rows article>strong,.wcoll-atelier-event__rows article>p,.wcoll-atelier-event__rows article>a{grid-column:auto}.wcoll-atelier-story__columns{grid-template-columns:.75fr 1fr 1.25fr}.wcoll-gallery-grid--atelier{grid-template-columns:repeat(3,1fr)}.wcoll-gallery-grid--atelier .wcoll-gallery-item:nth-child(1),.wcoll-gallery-grid--atelier .wcoll-gallery-item:nth-child(5){grid-row:span 2;min-height:505px}.wcoll-atelier-location{grid-template-columns:1fr 1fr}.wcoll-letterpress-couple__cards{grid-template-columns:1fr auto 1fr;align-items:center}.wcoll-letterpress-couple__amp{display:block;font-family:Georgia,serif;font-size:4rem;color:#9c7c4f}.wcoll-letterpress-couple__cards img{height:470px}.wcoll-letterpress-event__stamps{grid-template-columns:1fr 1fr}.wcoll-letterpress-story{display:grid;grid-template-columns:1.05fr .95fr;gap:30px}.wcoll-letterpress-story__notes{margin-top:0}.wcoll-gallery-grid--letterpress{grid-template-columns:repeat(3,1fr)}.wcoll-gallery-grid--letterpress .wcoll-gallery-item{min-height:280px}.wcoll-letterpress-location{grid-template-columns:.45fr 1fr}.wcoll-celestial-couple__orbit{grid-template-columns:1fr auto 1fr;align-items:center}.wcoll-celestial-couple__orbit>i{display:block;width:140px;border-top:1px dashed rgba(232,199,126,.35)}.wcoll-celestial-event__planets{grid-template-columns:1fr 1fr}.wcoll-celestial-story__map{grid-template-columns:repeat(3,1fr)}.wcoll-celestial-story__map:before{left:0;right:0;top:23px;bottom:auto;border-left:0;border-top:1px dashed rgba(232,199,126,.38)}.wcoll-celestial-story__star{grid-template-columns:1fr;text-align:center}.wcoll-celestial-story__star time{margin:auto}.wcoll-gallery-grid--celestial{grid-template-columns:repeat(3,1fr)}.wcoll-gallery-grid--celestial .wcoll-gallery-item:nth-child(1){grid-column:auto;width:100%}.wcoll-celestial-location{grid-template-columns:.75fr 1fr}
}

/* Explicit preview Desktop enhancement; outer browser width must not control Mobile. */
.preview-frame--cinematic.is-desktop .wcoll-nav{height:64px;min-height:64px;padding:0 28px}.preview-frame--cinematic.is-desktop .wcoll-brand span{display:block}.preview-frame--cinematic.is-desktop .wcoll-nav nav{gap:24px}.preview-frame--cinematic.is-desktop .wcoll-cover{min-height:calc(100cqh - 64px);height:calc(100cqh - 64px)}.preview-frame--cinematic.is-desktop .wcoll-section{padding:96px clamp(40px,7cqw,92px)}.preview-frame--cinematic.is-desktop .wcoll-gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.preview-frame--cinematic.is-desktop .wcoll-interaction{grid-template-columns:repeat(3,minmax(0,1fr))}.preview-frame--cinematic.is-desktop .wcoll-cover--terracotta{grid-template-columns:1.05fr .95fr;padding:0}.preview-frame--cinematic.is-desktop .wcoll-terracotta__copy{padding-left:6cqw}.preview-frame--cinematic.is-desktop .wcoll-terracotta__arch{position:relative;right:auto;bottom:auto;align-self:stretch;width:100%;height:100%;border-radius:48% 0 0 0}.preview-frame--cinematic.is-desktop .wcoll-terracotta-couple__cards,.preview-frame--cinematic.is-desktop .wcoll-terracotta-event__tickets{grid-template-columns:1fr 1fr}.preview-frame--cinematic.is-desktop .wcoll-terracotta-story__timeline{grid-template-columns:repeat(3,1fr)}.preview-frame--cinematic.is-desktop .wcoll-terracotta-location{grid-template-columns:1fr .65fr}.preview-frame--cinematic.is-desktop .wcoll-cover--aurora{grid-template-columns:1.1fr .9fr}.preview-frame--cinematic.is-desktop .wcoll-aurora__glass{margin-left:6cqw;justify-self:start}.preview-frame--cinematic.is-desktop .wcoll-aurora__portrait{display:block;position:relative;z-index:2;align-self:stretch;overflow:hidden;border-radius:42% 0 0 42%}.preview-frame--cinematic.is-desktop .wcoll-aurora__portrait img{height:100%;object-fit:cover;opacity:.55}.preview-frame--cinematic.is-desktop .wcoll-aurora-couple__grid,.preview-frame--cinematic.is-desktop .wcoll-aurora-event__dashboard{grid-template-columns:1fr 1fr}.preview-frame--cinematic.is-desktop .wcoll-aurora-story__orbit{grid-template-columns:repeat(3,1fr)}.preview-frame--cinematic.is-desktop .wcoll-aurora-location{grid-template-columns:1fr .8fr}.preview-frame--cinematic.is-desktop .wcoll-cover--atelier{grid-template-columns:70px .85fr 1.15fr}.preview-frame--cinematic.is-desktop .wcoll-cover--atelier>figure{display:block;margin:0;overflow:hidden}.preview-frame--cinematic.is-desktop .wcoll-cover--atelier>figure img{height:100%;object-fit:cover;filter:grayscale(1)}.preview-frame--cinematic.is-desktop .wcoll-atelier-couple__feature{grid-template-columns:1fr 1fr}.preview-frame--cinematic.is-desktop .wcoll-atelier-event__rows article{grid-template-columns:60px 1.1fr .6fr 1fr auto;align-items:center}.preview-frame--cinematic.is-desktop .wcoll-atelier-event__rows article>strong,.preview-frame--cinematic.is-desktop .wcoll-atelier-event__rows article>p,.preview-frame--cinematic.is-desktop .wcoll-atelier-event__rows article>a{grid-column:auto}.preview-frame--cinematic.is-desktop .wcoll-atelier-story__columns{grid-template-columns:.75fr 1fr 1.25fr}.preview-frame--cinematic.is-desktop .wcoll-gallery-grid--atelier{grid-template-columns:repeat(3,1fr)}.preview-frame--cinematic.is-desktop .wcoll-atelier-location{grid-template-columns:1fr 1fr}.preview-frame--cinematic.is-desktop .wcoll-letterpress-couple__cards{grid-template-columns:1fr auto 1fr;align-items:center}.preview-frame--cinematic.is-desktop .wcoll-letterpress-couple__amp{display:block}.preview-frame--cinematic.is-desktop .wcoll-letterpress-event__stamps{grid-template-columns:1fr 1fr}.preview-frame--cinematic.is-desktop .wcoll-letterpress-story{display:grid;grid-template-columns:1.05fr .95fr;gap:30px}.preview-frame--cinematic.is-desktop .wcoll-gallery-grid--letterpress{grid-template-columns:repeat(3,1fr)}.preview-frame--cinematic.is-desktop .wcoll-letterpress-location{grid-template-columns:.45fr 1fr}.preview-frame--cinematic.is-desktop .wcoll-celestial-couple__orbit{grid-template-columns:1fr auto 1fr;align-items:center}.preview-frame--cinematic.is-desktop .wcoll-celestial-couple__orbit>i{display:block;width:120px;border-top:1px dashed rgba(232,199,126,.35)}.preview-frame--cinematic.is-desktop .wcoll-celestial-event__planets{grid-template-columns:1fr 1fr}.preview-frame--cinematic.is-desktop .wcoll-celestial-story__map{grid-template-columns:repeat(3,1fr)}.preview-frame--cinematic.is-desktop .wcoll-gallery-grid--celestial{grid-template-columns:repeat(3,1fr)}.preview-frame--cinematic.is-desktop .wcoll-gallery-grid--celestial .wcoll-gallery-item:nth-child(1){grid-column:auto;width:100%}.preview-frame--cinematic.is-desktop .wcoll-celestial-location{grid-template-columns:.75fr 1fr}

/* Explicit Mobile preview reset: never inherit desktop composition from outer viewport. */
.preview-frame--cinematic.is-mobile .wcoll-nav{height:58px;min-height:58px;padding:0 10px}.preview-frame--cinematic.is-mobile .wcoll-brand span{display:none}.preview-frame--cinematic.is-mobile .wcoll-nav nav{gap:8px}.preview-frame--cinematic.is-mobile .wcoll-cover{min-height:calc(100cqh - 58px);height:calc(100cqh - 58px)}.preview-frame--cinematic.is-mobile .wcoll-section{padding:66px 17px}.preview-frame--cinematic.is-mobile .wcoll-interaction{grid-template-columns:1fr}.preview-frame--cinematic.is-mobile .wcoll-cover--terracotta{grid-template-columns:1fr;padding:18px}.preview-frame--cinematic.is-mobile .wcoll-terracotta__arch{position:absolute;right:-12%;bottom:-15%;width:66%;height:68%}.preview-frame--cinematic.is-mobile .wcoll-terracotta-couple__cards,.preview-frame--cinematic.is-mobile .wcoll-terracotta-event__tickets,.preview-frame--cinematic.is-mobile .wcoll-terracotta-story__timeline,.preview-frame--cinematic.is-mobile .wcoll-terracotta-location{grid-template-columns:1fr}.preview-frame--cinematic.is-mobile .wcoll-cover--aurora{grid-template-columns:1fr}.preview-frame--cinematic.is-mobile .wcoll-aurora__portrait{display:none}.preview-frame--cinematic.is-mobile .wcoll-aurora-couple__grid,.preview-frame--cinematic.is-mobile .wcoll-aurora-event__dashboard,.preview-frame--cinematic.is-mobile .wcoll-aurora-story__orbit,.preview-frame--cinematic.is-mobile .wcoll-aurora-location{grid-template-columns:1fr}.preview-frame--cinematic.is-mobile .wcoll-cover--atelier{grid-template-columns:44px 1fr}.preview-frame--cinematic.is-mobile .wcoll-cover--atelier>figure{display:none}.preview-frame--cinematic.is-mobile .wcoll-atelier-couple__feature,.preview-frame--cinematic.is-mobile .wcoll-atelier-story__columns,.preview-frame--cinematic.is-mobile .wcoll-atelier-location{grid-template-columns:1fr}.preview-frame--cinematic.is-mobile .wcoll-atelier-event__rows article{grid-template-columns:42px 1fr}.preview-frame--cinematic.is-mobile .wcoll-atelier-event__rows article>strong,.preview-frame--cinematic.is-mobile .wcoll-atelier-event__rows article>p,.preview-frame--cinematic.is-mobile .wcoll-atelier-event__rows article>a{grid-column:2}.preview-frame--cinematic.is-mobile .wcoll-gallery-grid--atelier{grid-template-columns:1fr}.preview-frame--cinematic.is-mobile .wcoll-letterpress-couple__cards,.preview-frame--cinematic.is-mobile .wcoll-letterpress-event__stamps,.preview-frame--cinematic.is-mobile .wcoll-letterpress-story,.preview-frame--cinematic.is-mobile .wcoll-letterpress-location{grid-template-columns:1fr}.preview-frame--cinematic.is-mobile .wcoll-letterpress-couple__amp{display:none}.preview-frame--cinematic.is-mobile .wcoll-celestial-couple__orbit,.preview-frame--cinematic.is-mobile .wcoll-celestial-event__planets,.preview-frame--cinematic.is-mobile .wcoll-celestial-story__map,.preview-frame--cinematic.is-mobile .wcoll-celestial-location{grid-template-columns:1fr}.preview-frame--cinematic.is-mobile .wcoll-celestial-couple__orbit>i{display:none}.preview-frame--cinematic.is-mobile .wcoll-gallery-grid--celestial{grid-template-columns:repeat(2,1fr)}

@media(prefers-reduced-motion:reduce){.wcoll *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.wcoll-reveal{opacity:1;transform:none}}
/* STEP 09 preview-mobile isolation from outer desktop media queries. */
.preview-frame--cinematic.is-mobile .wcoll-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.preview-frame--cinematic.is-mobile .wcoll-terracotta__copy{padding-left:14px}
.preview-frame--cinematic.is-mobile .wcoll-terracotta-couple__cards img{height:330px}
.preview-frame--cinematic.is-mobile .wcoll-terracotta-story__item{grid-template-columns:70px 1fr;border-left:4px solid #b45f43;border-top:0}
.preview-frame--cinematic.is-mobile .wcoll-aurora__glass{margin-left:0;justify-self:center}
.preview-frame--cinematic.is-mobile .wcoll-aurora-story__orbit>i{left:25px;right:auto;top:0;bottom:0;width:1px;height:auto}
.preview-frame--cinematic.is-mobile .wcoll-aurora-story__node{grid-template-columns:56px 1fr;padding:17px 17px 17px 0;text-align:left}
.preview-frame--cinematic.is-mobile .wcoll-aurora-story__node time{margin:0}
.preview-frame--cinematic.is-mobile .wcoll-atelier__title{padding:22px}
.preview-frame--cinematic.is-mobile .wcoll-letterpress-couple__cards img{height:300px}
.preview-frame--cinematic.is-mobile .wcoll-celestial-story__map:before{left:23px;right:auto;top:20px;bottom:20px;border-left:1px dashed rgba(232,199,126,.38);border-top:0}
.preview-frame--cinematic.is-mobile .wcoll-celestial-story__star{grid-template-columns:48px 1fr;text-align:left}
.preview-frame--cinematic.is-mobile .wcoll-celestial-story__star time{margin:0}

/* ========================================================================== */
/* STEP 10 — PEARL ISLAMIC FLORAL                                             */
/* Original NEXORA design inspired by a complete Indonesian wedding flow.     */
/* ========================================================================== */
.wprime{--wp-emerald:#173f35;--wp-emerald-2:#285f51;--wp-gold:#b9985c;--wp-ivory:#fffdf7;--wp-paper:#f4efe5;--wp-ink:#18352e;--wp-muted:#746c5d;position:relative;isolation:isolate;min-height:100%;overflow-x:hidden;background:var(--wp-ivory);color:var(--wp-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}.wprime *{box-sizing:border-box}.wprime h1,.wprime h2,.wprime h3,.wprime p{margin-top:0}.wprime button,.wprime input,.wprime select,.wprime textarea{font:inherit}.wprime,.wprime *{scrollbar-width:none}.wprime::-webkit-scrollbar,.wprime *::-webkit-scrollbar{width:0;height:0;display:none}.wprime-cover{position:relative;display:grid;place-items:center;width:100%;height:100svh;min-height:640px;padding:20px;overflow:hidden;background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.9),transparent 42%),linear-gradient(145deg,#f2eadc,#fffdf7 55%,#e8ddca);transition:opacity .55s ease,transform .55s ease}.wprime:not(.is-open) .wprime-content{display:none}.wprime:not(.is-open) .wprime-floating{display:none}.wprime.is-open .wprime-cover{display:none}.wprime-cover__frame{position:relative;z-index:2;display:grid;place-items:center;width:min(100%,560px);padding:30px 22px;text-align:center;border:1px solid rgba(185,152,92,.72);outline:1px solid rgba(23,63,53,.28);outline-offset:-10px;border-radius:30px;background:rgba(255,253,247,.88);box-shadow:0 30px 90px rgba(30,55,46,.14);backdrop-filter:blur(12px)}.wprime-cover__frame>p{margin-bottom:12px;font-size:.58rem;font-weight:900;letter-spacing:.3em;color:var(--wp-emerald)}.wprime-cover__frame h1{display:grid;margin:0 0 13px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.7rem,min(13vw,8.5vh),5.4rem);line-height:.84;font-weight:500;color:var(--wp-ink)}.wprime-cover__frame h1 em{font-size:.48em;color:var(--wp-gold);font-weight:400;margin:.12em}.wprime-cover__frame>time{font-size:.68rem;font-weight:800;letter-spacing:.15em;color:#765e39}.wprime-cover__guest{display:grid;gap:2px;width:min(100%,320px);margin:18px 0 14px;padding:12px 16px;border-top:1px solid rgba(185,152,92,.4);border-bottom:1px solid rgba(185,152,92,.4)}.wprime-cover__guest small{font-size:.58rem;color:var(--wp-muted)}.wprime-cover__guest strong{font-family:Georgia,serif;font-size:.98rem}.wprime-cover__frame>button{border:0;border-radius:999px;padding:12px 20px;background:var(--wp-emerald);color:#fff;font-size:.66rem;font-weight:900;letter-spacing:.11em;box-shadow:0 12px 28px rgba(23,63,53,.22)}.wprime-cover__frame>button span{margin-left:8px}.wprime-cover__frame>small{margin-top:10px;font-size:.5rem;color:#8a8170}.wprime-cover__ornament{position:absolute;width:210px;height:330px;border:3px solid rgba(23,63,53,.23);border-radius:50%;transform:rotate(26deg)}.wprime-cover__ornament:before,.wprime-cover__ornament:after{content:"";position:absolute;width:54px;height:92px;border-radius:50%;background:#2f6b5a}.wprime-cover__ornament:before{left:-22px;top:70px;transform:rotate(-35deg)}.wprime-cover__ornament:after{right:-22px;bottom:70px;transform:rotate(35deg)}.wprime-cover__ornament--one{left:-100px;bottom:-90px}.wprime-cover__ornament--two{right:-100px;top:-90px;transform:rotate(205deg)}
.wprime-nav{position:relative;z-index:40;display:flex;align-items:center;justify-content:space-between;height:60px;min-height:60px;padding:0 12px;background:rgba(20,57,48,.94);color:#fff;border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(16px)}.wprime-nav__brand{border:0;background:transparent;color:#fff;font-family:Georgia,serif;font-size:1.25rem;font-weight:700}.wprime-nav__brand span{color:#d8bb7c;margin-left:2px}.wprime-nav nav{display:flex;gap:7px;overflow-x:auto}.wprime-nav nav button{border:0;border-bottom:2px solid transparent;background:transparent;color:#d7e3df;padding:8px 4px;font-size:.55rem;font-weight:800;white-space:nowrap}.wprime-nav nav button.is-active{color:#fff;border-color:#d8bb7c}.wprime-section{padding:66px 18px}.wprime-heading{width:min(100%,760px);margin:0 auto 30px;text-align:center}.wprime-heading>span{display:block;margin-bottom:8px;color:var(--wp-gold);font-size:.58rem;font-weight:900;letter-spacing:.24em}.wprime-heading h2{margin-bottom:12px;font-family:Georgia,serif;font-size:clamp(2rem,8vw,4.2rem);line-height:1;color:var(--wp-ink);font-weight:500}.wprime-heading p{margin:0;color:var(--wp-muted)}.wprime-heading--light h2,.wprime-heading--light p{color:#fff}.wprime-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.wprime-reveal.is-visible{opacity:1;transform:none}.wprime-hero{position:relative;display:grid;place-items:center;min-height:calc(100svh - 60px);padding-top:86px;padding-bottom:70px;text-align:center;background:linear-gradient(160deg,#143d34,#285f51);color:#fff;overflow:hidden}.wprime-hero:before{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(216,187,124,.24);border-radius:50%;box-shadow:0 0 0 28px rgba(216,187,124,.035),0 0 0 56px rgba(216,187,124,.02)}.wprime-hero__seal{position:absolute;right:-34px;top:100px;display:grid;place-items:center;width:140px;height:140px;border:1px solid rgba(216,187,124,.35);border-radius:50%;color:rgba(216,187,124,.44);font-family:Georgia,serif;font-size:3.3rem}.wprime-hero>div:last-child{position:relative;z-index:2;width:min(100%,760px)}.wprime-hero>div>p{font-size:.58rem;font-weight:900;letter-spacing:.28em;color:#d8bb7c}.wprime-hero h2{display:grid;margin:12px 0;font-family:Georgia,serif;font-size:clamp(3rem,13vw,7rem);line-height:.83;font-weight:500}.wprime-hero h2 em{font-size:.45em;color:#d8bb7c;font-weight:400;margin:.14em}.wprime-hero time{font-size:.7rem;letter-spacing:.13em}.wprime-countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;width:min(100%,420px);margin:24px auto}.wprime-countdown div{padding:12px 4px;border:1px solid rgba(216,187,124,.3);border-radius:14px;background:rgba(0,0,0,.09)}.wprime-countdown strong{display:block;font-family:Georgia,serif;font-size:1.3rem}.wprime-countdown span{font-size:.5rem;color:#c9d7d2}.wprime-hero button{border:1px solid #d8bb7c;border-radius:999px;background:transparent;color:#fff;padding:11px 18px;font-size:.63rem;font-weight:900}.wprime-verse{background:#ede6d9}.wprime-verse>div{width:min(100%,780px);margin:auto;padding:30px 20px;text-align:center;border:1px solid rgba(185,152,92,.35);background:rgba(255,253,247,.7)}.wprime-verse span{font-family:Georgia,serif;font-size:4rem;line-height:.6;color:var(--wp-gold)}.wprime-verse p{font-family:Georgia,serif;font-size:1.08rem;line-height:1.7;color:#344d45}.wprime-verse strong{font-size:.65rem;color:#82683d}.wprime-intro{background:#fffdf7}.wprime-couple{display:grid;gap:22px;background:#fffdf7}.wprime-couple__person{text-align:center}.wprime-couple__person>div{width:210px;height:260px;margin:0 auto 18px;padding:8px;border:1px solid rgba(185,152,92,.55);border-radius:46% 46% 20px 20px;background:#fff}.wprime-couple__person img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.wprime-couple__person small{font-size:.54rem;font-weight:900;letter-spacing:.2em;color:var(--wp-gold)}.wprime-couple__person h3{margin:7px 0 2px;font-family:Georgia,serif;font-size:2.3rem;font-weight:500}.wprime-couple__person>strong{display:block;font-size:.76rem}.wprime-couple__person p{max-width:300px;margin:8px auto;color:var(--wp-muted);font-size:.76rem}.wprime-couple__person>span{font-size:.67rem;color:var(--wp-emerald-2)}.wprime-couple__amp{text-align:center;font-family:Georgia,serif;font-size:3rem;color:var(--wp-gold)}.wprime-events{background:linear-gradient(160deg,#143d34,#0e2d26);color:#fff}.wprime-events__grid{display:grid;gap:14px;width:min(100%,920px);margin:auto}.wprime-event-card{position:relative;padding:26px 20px;border:1px solid rgba(216,187,124,.35);border-radius:24px;background:rgba(255,255,255,.055)}.wprime-event-card>span{position:absolute;right:18px;top:14px;font-family:Georgia,serif;font-size:2.8rem;color:rgba(216,187,124,.18)}.wprime-event-card small{font-size:.54rem;letter-spacing:.2em;color:#d8bb7c}.wprime-event-card h3{margin:13px 0 5px;font-family:Georgia,serif;font-size:1.35rem}.wprime-event-card strong{font-size:.75rem}.wprime-event-card p{color:#c8d7d2;font-size:.77rem}.wprime-event-card a{font-size:.61rem;font-weight:900;color:#d8bb7c}.wprime-rsvp{background:#fffdf7}.wprime-form{display:grid;gap:10px;width:min(100%,680px);margin:auto}.wprime-form input,.wprime-form select,.wprime-form textarea{width:100%;border:1px solid rgba(23,63,53,.18);border-radius:14px;background:#fff;padding:13px;color:var(--wp-ink);outline:none}.wprime-form button{border:0;border-radius:14px;background:var(--wp-emerald);color:#fff;padding:13px;font-weight:850}.wprime-live{display:grid;gap:25px;align-items:center;background:#ede6d9}.wprime-live__media{overflow:hidden;border-radius:24px;box-shadow:0 22px 50px rgba(42,58,50,.14)}.wprime-live__media img{width:100%;height:310px;object-fit:cover}.wprime-live small{font-size:.55rem;font-weight:900;letter-spacing:.2em;color:#8a6e3e}.wprime-live h2{font-family:Georgia,serif;font-size:2.4rem;line-height:1.05}.wprime-live p{color:var(--wp-muted)}.wprime-live a{display:inline-flex;padding:10px 15px;border-radius:999px;background:var(--wp-emerald);color:#fff;font-size:.65rem;font-weight:900}.wprime-story{background:#fffdf7}.wprime-story__grid{display:grid;gap:18px;width:min(100%,980px);margin:auto}.wprime-story__card{overflow:hidden;border-radius:24px;background:#fff;box-shadow:0 18px 45px rgba(33,54,46,.08)}.wprime-story__card img{width:100%;height:220px;object-fit:cover}.wprime-story__card>div{padding:20px}.wprime-story__card span{color:var(--wp-gold);font-size:.65rem;font-weight:900}.wprime-story__card h3{font-family:Georgia,serif;font-size:1.45rem}.wprime-story__card p{color:var(--wp-muted);font-size:.79rem}.wprime-gallery{background:var(--wp-emerald);color:#fff}.wprime-gallery__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;width:min(100%,980px);margin:auto}.wprime-gallery__item{position:relative;overflow:hidden;min-height:180px;border:0;border-radius:18px;background:#102f28;padding:0}.wprime-gallery__item img{width:100%;height:100%;object-fit:cover;transition:.3s ease}.wprime-gallery__item:hover img{transform:scale(1.04)}.wprime-gallery__item span{position:absolute;right:9px;bottom:7px;color:#fff;font-size:.55rem;font-weight:900}.wprime-gallery__item--1{grid-row:span 2;min-height:370px}.wprime-gift{background:#ede6d9}.wprime-gift__grid{display:grid;gap:12px;width:min(100%,900px);margin:auto}.wprime-gift__grid article{padding:22px;border:1px solid rgba(23,63,53,.16);border-radius:20px;background:#fffdf7}.wprime-gift__grid small{display:block;margin-bottom:8px;color:var(--wp-gold);font-size:.52rem;font-weight:900;letter-spacing:.17em}.wprime-gift__grid strong{display:block;color:var(--wp-ink);font-size:.82rem}.wprime-gift__grid button{margin-top:13px;border:0;border-radius:999px;background:var(--wp-emerald);color:#fff;padding:8px 12px;font-size:.6rem;font-weight:850}.wprime-wishes{background:#fffdf7}.wprime-wishes__layout{display:grid;gap:20px;width:min(100%,920px);margin:auto}.wprime-wishes__list{display:grid;gap:9px}.wprime-wishes__list article{padding:15px;border-left:3px solid var(--wp-gold);background:#f5f0e6}.wprime-wishes__list strong{font-size:.75rem}.wprime-wishes__list p{margin:5px 0 0;color:var(--wp-muted);font-size:.76rem}.wprime-closing{display:grid;place-items:center;min-height:560px;text-align:center;background:linear-gradient(160deg,#143d34,#0d2923);color:#fff}.wprime-closing>div{width:min(100%,650px)}.wprime-closing p{color:#c8d7d2}.wprime-closing h2{display:grid;font-family:Georgia,serif;font-size:clamp(3rem,12vw,6rem);line-height:.84;font-weight:500}.wprime-closing h2 em{color:#d8bb7c;font-size:.46em;font-weight:400;margin:.12em}.wprime-closing strong{display:block;color:#d8bb7c;letter-spacing:.09em}.wprime-closing small{display:block;margin-top:22px;color:#c8d7d2}.wprime-floating{position:fixed;right:15px;bottom:15px;z-index:70;display:grid;gap:8px}.preview-frame--cinematic .wprime-floating{position:absolute}.wprime-floating button{width:44px;height:44px;border:0;border-radius:50%;background:#d8bb7c;color:#173f35;font-weight:900;box-shadow:0 12px 28px rgba(0,0,0,.18)}.wprime-preview-label{position:fixed;left:18px;bottom:18px;z-index:80;padding:7px 11px;border-radius:999px;background:rgba(23,63,53,.88);color:#fff;font-size:.55rem;font-weight:900;letter-spacing:.15em}.preview-frame--cinematic .wprime-preview-label{position:absolute}.wprime-lightbox{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:20px;background:rgba(7,18,15,.92);opacity:0;transition:.18s ease}.preview-frame--cinematic .wprime-lightbox{position:absolute}.wprime-lightbox[hidden]{display:none}.wprime-lightbox.is-open{opacity:1}.wprime-lightbox img{max-width:92%;max-height:88%;width:auto;height:auto;object-fit:contain}.wprime-lightbox button{position:absolute;right:15px;top:15px;width:42px;height:42px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:transparent;color:#fff;font-size:1.3rem}
@media(min-width:760px){.wprime-nav{height:64px;min-height:64px;padding:0 28px}.wprime-nav nav{gap:22px}.wprime-nav nav button{font-size:.66rem}.wprime-section{padding:96px clamp(30px,7vw,90px)}.wprime-cover{padding:34px}.wprime-cover__frame{padding:48px}.wprime-couple{grid-template-columns:1fr auto 1fr;align-items:center}.wprime-events__grid{grid-template-columns:1fr 1fr}.wprime-form{grid-template-columns:1.4fr 1fr .55fr auto}.wprime-rsvp .wprime-form button{padding-inline:22px}.wprime-live{grid-template-columns:1fr 1fr}.wprime-story__grid{grid-template-columns:repeat(3,1fr)}.wprime-gallery__grid{grid-template-columns:repeat(4,1fr)}.wprime-gallery__item--1{grid-column:span 2;grid-row:span 2}.wprime-gallery__item--4{grid-column:span 2}.wprime-gift__grid{grid-template-columns:repeat(3,1fr)}.wprime-wishes__layout{grid-template-columns:.9fr 1.1fr}}
/* Explicit preview mode compositions: outer browser media queries must not leak. */
.preview-frame--cinematic .wprime{min-height:100%}.preview-frame--cinematic .wprime-cover{height:calc(100vh - 135px);min-height:700px}.preview-frame--cinematic.is-mobile .wprime-nav{height:58px;min-height:58px;padding:0 10px}.preview-frame--cinematic.is-mobile .wprime-nav nav{gap:7px}.preview-frame--cinematic.is-mobile .wprime-nav nav button{font-size:.52rem}.preview-frame--cinematic.is-mobile .wprime-section{padding:66px 17px}.preview-frame--cinematic.is-mobile .wprime-couple,.preview-frame--cinematic.is-mobile .wprime-events__grid,.preview-frame--cinematic.is-mobile .wprime-live,.preview-frame--cinematic.is-mobile .wprime-story__grid,.preview-frame--cinematic.is-mobile .wprime-gift__grid,.preview-frame--cinematic.is-mobile .wprime-wishes__layout{grid-template-columns:1fr}.preview-frame--cinematic.is-mobile .wprime-form{grid-template-columns:1fr}.preview-frame--cinematic.is-mobile .wprime-gallery__grid{grid-template-columns:repeat(2,1fr)}.preview-frame--cinematic.is-desktop .wprime-nav{height:64px;min-height:64px;padding:0 28px}.preview-frame--cinematic.is-desktop .wprime-nav nav{gap:22px}.preview-frame--cinematic.is-desktop .wprime-nav nav button{font-size:.66rem}.preview-frame--cinematic.is-desktop .wprime-section{padding:96px clamp(30px,7cqw,90px)}.preview-frame--cinematic.is-desktop .wprime-couple{grid-template-columns:1fr auto 1fr;align-items:center}.preview-frame--cinematic.is-desktop .wprime-events__grid{grid-template-columns:1fr 1fr}.preview-frame--cinematic.is-desktop .wprime-form{grid-template-columns:1.4fr 1fr .55fr auto}.preview-frame--cinematic.is-desktop .wprime-live{grid-template-columns:1fr 1fr}.preview-frame--cinematic.is-desktop .wprime-story__grid{grid-template-columns:repeat(3,1fr)}.preview-frame--cinematic.is-desktop .wprime-gallery__grid{grid-template-columns:repeat(4,1fr)}.preview-frame--cinematic.is-desktop .wprime-gift__grid{grid-template-columns:repeat(3,1fr)}.preview-frame--cinematic.is-desktop .wprime-wishes__layout{grid-template-columns:.9fr 1.1fr}
@media(prefers-reduced-motion:reduce){.wprime *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.wprime-reveal{opacity:1;transform:none}}

/* ========================================================================== 
   STEP 11 — 15 WEDDING SIGNATURE CONCEPTS
   Shared content contract, deliberately different composition and visual system.
   ========================================================================== */
.wsig{--ws-bg:#fff;--ws-surface:#fff;--ws-ink:#172033;--ws-muted:#697386;--ws-accent:#b58b54;--ws-strong:#172033;--ws-button:#fff;position:relative;width:100%;max-width:100%;min-width:0;overflow-x:clip;background:var(--ws-bg);color:var(--ws-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;scroll-padding-top:72px}.wsig *{box-sizing:border-box}.wsig img{display:block;max-width:100%}.wsig button,.wsig input,.wsig select,.wsig textarea{font:inherit}.wsig button{cursor:pointer}.wsig:not(.is-open) .wsig-body>:not(.wsig-cover){display:none}.wsig:not(.is-open) .wsig-floating{opacity:0;pointer-events:none}.wsig-nav{--invite-frozen-transform:translate3d(0,var(--invite-frozen-y,0px),0);position:relative;z-index:230;display:flex;align-items:center;justify-content:space-between;gap:9px;height:58px;min-height:58px;padding:0 10px;transform:var(--invite-frozen-transform);will-change:transform;color:var(--ws-ink);background:color-mix(in srgb,var(--ws-bg) 88%,transparent);border-bottom:1px solid color-mix(in srgb,var(--ws-ink) 15%,transparent);backdrop-filter:blur(18px)}.wsig-brand{display:flex;align-items:center;gap:8px;min-width:0;border:0;background:transparent;color:inherit}.wsig-brand b{display:flex;align-items:center;justify-content:center;width:33px;height:33px;border:1px solid currentColor;border-radius:50%;font-family:Georgia,serif;font-size:.62rem}.wsig-brand b i{margin:0 1px;color:var(--ws-accent);font-style:normal}.wsig-brand span{display:none;font-size:.62rem;font-weight:850;letter-spacing:.08em;white-space:nowrap}.wsig-nav nav{display:flex;gap:8px;min-width:0;overflow-x:auto;scrollbar-width:none}.wsig-nav nav::-webkit-scrollbar{display:none}.wsig-nav nav button{position:relative;border:0;background:transparent;color:inherit;padding:20px 0 17px;font-size:.48rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;opacity:.62}.wsig-nav nav button:after{content:"";position:absolute;left:0;right:0;bottom:8px;height:2px;background:var(--ws-accent);transform:scaleX(0);transition:.22s ease}.wsig-nav nav button.is-active,.wsig-nav nav button:hover{opacity:1}.wsig-nav nav button.is-active:after{transform:scaleX(1)}.wsig-cover{position:relative;isolation:isolate;display:grid;place-items:center;width:100%;min-height:calc(100svh - 58px);height:calc(100svh - 58px);overflow:hidden;padding:18px}.preview-frame--cinematic .wsig-cover{min-height:680px;height:680px}.preview-frame--cinematic.is-desktop .wsig-cover{min-height:620px;height:620px}.wsig-cover__content,.wsig-cover>div{position:relative;z-index:2}.wsig-cover small{display:block;font-size:.5rem;font-weight:900;letter-spacing:.22em}.wsig-cover h1{margin:12px 0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.55rem,14vw,5rem);line-height:.9;font-weight:500}.wsig-cover h1 em{display:block;margin:.14em;font-size:.52em;font-weight:400;color:var(--ws-accent)}.wsig-cover p{font-size:.67rem;letter-spacing:.09em}.wsig-guest{display:grid;gap:3px;margin:14px auto 12px}.wsig-guest span{font-size:.48rem;letter-spacing:.12em;text-transform:uppercase;opacity:.68}.wsig-guest strong{font-family:Georgia,serif;font-size:.88rem}.wsig-open{display:inline-flex;align-items:center;gap:12px;border:0;border-radius:999px;background:var(--ws-strong);color:var(--ws-button);padding:11px 17px;font-size:.63rem;font-weight:900;box-shadow:0 14px 32px color-mix(in srgb,var(--ws-strong) 20%,transparent)}.wsig-section{position:relative;padding:74px 18px;scroll-margin-top:72px}.wsig-section header{max-width:760px;margin:0 auto 30px;text-align:center}.wsig-section header small{font-size:.54rem;font-weight:900;letter-spacing:.2em;color:var(--ws-accent)}.wsig-section header h2{margin:11px 0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,10vw,4.3rem);line-height:1;font-weight:500}.wsig-section header p{color:var(--ws-muted);line-height:1.7}.wsig-reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.wsig-reveal.is-visible{opacity:1;transform:none}.wsig-couple{display:grid;gap:18px;align-items:center;max-width:980px;margin:auto}.wsig-couple>i{text-align:center;font-family:Georgia,serif;font-size:2.5rem;color:var(--ws-accent)}.wsig-couple>article{text-align:center}.wsig-couple__photo{overflow:hidden;width:210px;height:245px;margin:0 auto 18px;background:#ddd}.wsig-couple__photo img{width:100%;height:100%;object-fit:cover}.wsig-couple small{font-size:.5rem;font-weight:900;letter-spacing:.17em;color:var(--ws-accent)}.wsig-couple h3{margin:8px 0 5px;font-family:Georgia,serif;font-size:1.75rem;font-weight:500}.wsig-couple p{max-width:320px;margin:auto;color:var(--ws-muted);font-size:.75rem;line-height:1.6}.wsig-event-cards,.wsig-origin-table,.wsig-sage-calendar,.wsig-tuscan-tickets,.wsig-marble-blocks,.wsig-pampas-tags,.wsig-midnight-planets,.wsig-noir-strip,.wsig-watercolor-brushes,.wsig-luxe-diamonds,.wsig-heirloom-stamps,.wsig-java-pendopo{display:grid;gap:13px;max-width:940px;margin:auto}.wsig-event-cards article,.wsig-origin-table article,.wsig-sage-calendar article,.wsig-tuscan-tickets article,.wsig-marble-blocks article,.wsig-pampas-tags article,.wsig-midnight-planets article,.wsig-noir-strip article,.wsig-watercolor-brushes article,.wsig-luxe-diamonds article,.wsig-heirloom-stamps article,.wsig-java-pendopo article{position:relative;padding:23px;border:1px solid color-mix(in srgb,var(--ws-ink) 16%,transparent);background:var(--ws-surface)}.wsig-event-cards small,.wsig-origin-table small,.wsig-sage-calendar small,.wsig-tuscan-tickets small,.wsig-marble-blocks small,.wsig-pampas-tags small,.wsig-midnight-planets small,.wsig-noir-strip small,.wsig-watercolor-brushes small,.wsig-luxe-diamonds small,.wsig-heirloom-stamps small,.wsig-java-pendopo small{font-size:.52rem;font-weight:900;letter-spacing:.16em;color:var(--ws-accent)}.wsig-event-cards h3,.wsig-origin-table h3,.wsig-sage-calendar h3,.wsig-tuscan-tickets h3,.wsig-marble-blocks h3,.wsig-pampas-tags h3,.wsig-midnight-planets h3,.wsig-noir-strip h3,.wsig-watercolor-brushes h3,.wsig-luxe-diamonds h3,.wsig-heirloom-stamps h3,.wsig-java-pendopo h3{margin:11px 0 5px;font-family:Georgia,serif;font-size:1.35rem}.wsig-event-cards p,.wsig-origin-table p,.wsig-sage-calendar p,.wsig-tuscan-tickets p,.wsig-marble-blocks p,.wsig-pampas-tags p,.wsig-midnight-planets p,.wsig-noir-strip p,.wsig-watercolor-brushes p,.wsig-luxe-diamonds p,.wsig-heirloom-stamps p,.wsig-java-pendopo p{color:var(--ws-muted);font-size:.75rem;line-height:1.55}.wsig-countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;width:min(100%,520px);margin:28px auto 0}.wsig-countdown div{display:grid;place-items:center;padding:11px 3px;border:1px solid color-mix(in srgb,var(--ws-ink) 20%,transparent);background:color-mix(in srgb,var(--ws-surface) 80%,transparent)}.wsig-countdown strong{font-size:1rem}.wsig-countdown span{font-size:.42rem;text-transform:uppercase;letter-spacing:.08em;opacity:.65}.wsig-story-list{display:grid;gap:13px;max-width:940px;margin:auto}.wsig-story-list article{position:relative;padding:20px;border:1px solid color-mix(in srgb,var(--ws-ink) 14%,transparent);background:var(--ws-surface)}.wsig-story-list article>span{display:block;margin-bottom:14px;font-size:.58rem;font-weight:900;color:var(--ws-accent)}.wsig-story-list small{font-size:.52rem;font-weight:850;letter-spacing:.12em}.wsig-story-list h3{margin:8px 0;font-family:Georgia,serif;font-size:1.3rem}.wsig-story-list p{color:var(--ws-muted);font-size:.76rem;line-height:1.6}.wsig-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-width:1000px;margin:auto}.wsig-gallery__item{position:relative;overflow:hidden;min-height:190px;border:0;padding:0;background:#ddd}.wsig-gallery__item img{width:100%;height:100%;object-fit:cover;transition:.4s ease}.wsig-gallery__item:hover img{transform:scale(1.04)}.wsig-gallery__item span{position:absolute;right:9px;bottom:7px;padding:4px 7px;background:rgba(0,0,0,.45);color:#fff;font-size:.5rem;font-weight:900}.wsig-interaction{display:grid;gap:16px}.wsig-interaction>article{padding:24px;border:1px solid color-mix(in srgb,var(--ws-ink) 16%,transparent);background:var(--ws-surface)}.wsig-interaction small{font-size:.52rem;font-weight:900;letter-spacing:.18em;color:var(--ws-accent)}.wsig-interaction h2{margin:10px 0 8px;font-family:Georgia,serif;font-size:1.9rem;line-height:1}.wsig-interaction p{color:var(--ws-muted);font-size:.77rem;line-height:1.6}.wsig-interaction form{display:grid;gap:9px;margin-top:17px}.wsig-interaction input,.wsig-interaction select,.wsig-interaction textarea{width:100%;border:1px solid color-mix(in srgb,var(--ws-ink) 20%,transparent);background:color-mix(in srgb,var(--ws-surface) 90%,transparent);color:inherit;padding:11px 12px}.wsig-interaction textarea{min-height:95px}.wsig-interaction form button,.wsig-interaction__gift button{border:0;background:var(--ws-strong);color:var(--ws-button);padding:11px 13px;font-weight:850}.wsig-interaction__gift>div{display:grid;gap:10px;margin-top:15px}.wsig-interaction__gift strong{font-size:.78rem;overflow-wrap:anywhere}.wsig-interaction__wish [data-wsig-wish-list]{display:grid;gap:8px;margin-top:14px}.wsig-interaction__wish [data-wsig-wish-list] article{padding:10px;border-top:1px solid color-mix(in srgb,var(--ws-ink) 15%,transparent)}.wsig-closing{display:grid;place-items:center;min-height:470px;padding:80px 22px;text-align:center}.wsig-closing small{font-size:.52rem;font-weight:900;letter-spacing:.18em}.wsig-closing h2{margin:18px 0;font-family:Georgia,serif;font-size:clamp(2.6rem,12vw,5.8rem);line-height:.92;font-weight:500}.wsig-closing h2 em{color:var(--ws-accent);font-size:.5em}.wsig-floating{position:fixed;right:14px;bottom:14px;z-index:270;display:grid;gap:8px}.preview-frame--cinematic .wsig-floating{position:absolute}.wsig-floating button{width:42px;height:42px;border:1px solid color-mix(in srgb,var(--ws-accent) 50%,transparent);border-radius:50%;background:var(--ws-strong);color:var(--ws-button);box-shadow:0 12px 28px rgba(0,0,0,.18)}.wsig-floating button:first-child{background:var(--ws-accent);color:var(--ws-strong)}.wsig-preview-label{position:fixed;left:14px;bottom:14px;z-index:275;padding:7px 11px;border-radius:999px;background:var(--ws-strong);color:var(--ws-button);font-size:.5rem;font-weight:900;letter-spacing:.16em}.preview-frame--cinematic .wsig-preview-label{position:absolute}.wsig-lightbox{position:fixed;inset:0;z-index:330;display:grid;place-items:center;padding:22px;background:rgba(5,10,18,.93);opacity:0;transition:.18s ease}.preview-frame--cinematic .wsig-lightbox{position:absolute}.wsig-lightbox[hidden]{display:none}.wsig-lightbox.is-open{opacity:1}.wsig-lightbox img{max-width:92%;max-height:88%;width:auto;height:auto;object-fit:contain}.wsig-lightbox button{position:absolute;right:15px;top:15px;width:42px;height:42px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:transparent;color:#fff;font-size:1.3rem}.wsig,.wsig *{scrollbar-width:none}.wsig::-webkit-scrollbar,.wsig *::-webkit-scrollbar{display:none}

/* Distinct visual systems */
.wsig--pearl-bloom{--ws-bg:#fbf8f1;--ws-surface:#fffdf8;--ws-ink:#3e342b;--ws-muted:#7e7063;--ws-accent:#b59057;--ws-strong:#7d5c2b;--ws-button:#fff}.wsig-nav--pearl{background:rgba(251,248,241,.94)}.wsig-cover--pearl{background:radial-gradient(circle,#fffdf8,#f3e7cf);text-align:center}.wsig-cover--pearl:before{content:"";position:absolute;width:min(78vw,500px);height:min(72vw,560px);border:2px solid rgba(181,144,87,.52);border-radius:50%}.wsig-pearl-flowers{position:absolute;width:180px;height:180px;background:radial-gradient(circle at 45% 50%,#d9ad68 0 8%,#fffaf0 9% 27%,transparent 28%),radial-gradient(ellipse at 20% 70%,#d6c39f 0 13%,transparent 14%)}.wsig-pearl-flowers--a{left:-50px;top:20px}.wsig-pearl-flowers--b{right:-55px;bottom:25px;transform:rotate(170deg)}.wsig-pearl-verse{text-align:center}.wsig-pearl-verse blockquote{max-width:780px;margin:auto;font-family:Georgia,serif;font-size:1.25rem;line-height:1.65}.wsig-couple--round .wsig-couple__photo,.wsig-gallery--arches .wsig-gallery__item{border-radius:50% 50% 18% 18%}.wsig-story-list--ribbon article{border-radius:0 24px 24px 0}.wsig-interaction--pearl,.wsig-closing--pearl{background:#f1e6d2}
.wsig--emerald-grace{--ws-bg:#f4f0e3;--ws-surface:#fbf7ea;--ws-ink:#173f35;--ws-muted:#66776f;--ws-accent:#b99555;--ws-strong:#173f35;--ws-button:#fff}.wsig-nav--emerald{background:rgba(244,240,227,.95)}.wsig-cover--emerald{background:linear-gradient(150deg,#0f3b31,#175844);color:#fff;text-align:center}.wsig-cover--emerald:after{content:"";position:absolute;inset:45px;border:1px solid rgba(215,180,109,.45);border-radius:48% 48% 10px 10px}.wsig-emerald-mihrab{width:min(100%,560px);padding:35px 20px}.wsig-emerald-mihrab>span{font-family:Georgia,serif;color:#ddc27e}.wsig-emerald-intro{text-align:center}.wsig-emerald-heading{display:grid;grid-template-columns:auto 1fr;gap:20px;max-width:900px;margin:0 auto 30px}.wsig-emerald-heading h2{margin:0;font-family:Georgia,serif}.wsig-couple--mihrab .wsig-couple__photo{border-radius:50% 50% 5px 5px;border:3px solid #b99555}.wsig-event-cards--emerald article{border:0;border-bottom:1px solid rgba(23,63,53,.2);background:transparent}.wsig-story-list--tasbih article{border-radius:999px}.wsig-gallery--geometry{grid-template-columns:repeat(3,1fr)}.wsig-gallery--geometry .wsig-gallery__item{clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);min-height:150px}.wsig-interaction--emerald,.wsig-closing--emerald{background:#173f35;color:#fff;--ws-surface:#204d42;--ws-muted:#cad8d3}
.wsig--origin-minimal{--ws-bg:#f8f6f1;--ws-surface:#fff;--ws-ink:#201d1a;--ws-muted:#7b746c;--ws-accent:#8b6c54;--ws-strong:#201d1a;--ws-button:#fff}.wsig-nav--origin{background:rgba(248,246,241,.96)}.wsig-cover--origin{background:linear-gradient(90deg,#ded7cb 0 34%,#f8f6f1 34%);text-align:left}.wsig-origin-index{position:absolute;left:15px;top:18px}.wsig-origin-copy{width:100%;padding:70px 32px}.wsig-origin-copy h1 span{display:block}.wsig-cover--origin aside{position:absolute;right:0;bottom:0;width:42%;padding:28px;background:#ded7cb}.wsig-origin-title{display:grid;grid-template-columns:50px 1fr;gap:18px;max-width:950px;margin:0 auto 35px}.wsig-origin-title h2{margin:0;font-size:2.8rem}.wsig-couple--columns{border-top:1px solid #222;border-bottom:1px solid #222;padding:30px 0}.wsig-origin-table{border-top:2px solid #222}.wsig-origin-table article{border:0;border-bottom:1px solid #aaa;background:transparent}.wsig-story-list--index article{border:0;border-top:1px solid #aaa;background:transparent}.wsig-gallery--strips{grid-template-columns:1fr}.wsig-gallery--strips .wsig-gallery__item{height:150px}.wsig-interaction--origin,.wsig-closing--origin{background:#ded7cb}
.wsig--royal-noir{--ws-bg:#06132e;--ws-surface:#0d2144;--ws-ink:#fff8e8;--ws-muted:#b7c2d6;--ws-accent:#d3aa59;--ws-strong:#d3aa59;--ws-button:#06132e}.wsig-nav--royal{background:rgba(6,19,46,.95);color:#fff8e8}.wsig-cover--royal{background:radial-gradient(circle,#132f5d,#06132e 65%);color:#fff8e8;text-align:center}.wsig-cover--royal:before{content:"";position:absolute;inset:28px;border:1px solid rgba(211,170,89,.55);border-radius:48% 48% 10px 10px}.wsig-royal-couple,.wsig-royal-event,.wsig-royal-story,.wsig-royal-gallery{background:#06132e;color:#fff8e8}.wsig-couple--medallion .wsig-couple__photo{border-radius:50%;outline:2px solid #d3aa59}.wsig-event-cards--royal article{border:1px solid #d3aa59;background:#0d2144;text-align:center}.wsig-royal-scroll{max-width:800px;margin:auto;padding:35px;border:1px solid #d3aa59;background:#0d2144}.wsig-gallery--jewel .wsig-gallery__item{clip-path:polygon(10% 0,90% 0,100% 10%,100% 90%,90% 100%,10% 100%,0 90%,0 10%)}.wsig-interaction--royal{background:#0d2144;--ws-surface:#06132e;--ws-muted:#b7c2d6}.wsig-closing--royal{background:radial-gradient(circle,#132f5d,#06132e);color:#fff8e8}
.wsig--blush-serenity{--ws-bg:#fcefee;--ws-surface:#fff9f8;--ws-ink:#583d43;--ws-muted:#8f747a;--ws-accent:#c8798a;--ws-strong:#9e5e6c;--ws-button:#fff}.wsig-nav--blush{background:rgba(252,239,238,.95)}.wsig-cover--blush{background:linear-gradient(150deg,#fff8f7,#f6dfe2);text-align:center}.wsig-blush-arcs{position:absolute;width:480px;height:480px;border:18px solid rgba(200,121,138,.12);border-radius:50%;box-shadow:0 0 0 35px rgba(255,255,255,.4),0 0 0 70px rgba(200,121,138,.07)}.wsig-couple--polaroid article{padding:12px 12px 24px;background:#fff;box-shadow:0 18px 40px rgba(88,61,67,.12);transform:rotate(-2deg)}.wsig-couple--polaroid article:last-child{transform:rotate(2deg)}.wsig-couple--polaroid .wsig-couple__photo{width:100%;border-radius:0}.wsig-event-cards--blush article{border:0;border-radius:80px 80px 25px 25px;text-align:center}.wsig-gallery--petals .wsig-gallery__item{border-radius:50% 50% 35% 65%/55% 35% 65% 45%}.wsig-interaction--blush,.wsig-closing--blush{background:#f3d9dc}
.wsig--sage-botanical{--ws-bg:#edf3e9;--ws-surface:#f8fbf5;--ws-ink:#294233;--ws-muted:#718076;--ws-accent:#779279;--ws-strong:#294233;--ws-button:#fff}.wsig-nav--sage{background:rgba(237,243,233,.95)}.wsig-cover--sage{grid-template-columns:1fr;background:#edf3e9;padding:0}.wsig-sage-image{height:40%;width:100%;overflow:hidden}.wsig-sage-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.75)}.wsig-sage-copy{padding:25px}.wsig-sage-label{display:flex;align-items:center;gap:12px;margin-bottom:25px}.wsig-sage-label span{display:grid;place-items:center;width:38px;height:38px;border:1px solid #779279;border-radius:50%}.wsig-couple--botanical article{padding:25px;background:#f8fbf5}.wsig-couple--botanical .wsig-couple__photo{border-radius:50%}.wsig-sage-calendar article{border:0;border-bottom:1px solid rgba(41,66,51,.2);background:transparent}.wsig-story-list--branch article{border-left:4px solid #779279}.wsig-gallery--organic .wsig-gallery__item{border-radius:38% 62% 44% 56%/55% 42% 58% 45%}.wsig-interaction--sage,.wsig-closing--sage{background:#dce8d8}
.wsig--tuscan-arch{--ws-bg:#f2dfca;--ws-surface:#fbf1e5;--ws-ink:#4a3028;--ws-muted:#81675e;--ws-accent:#ad613f;--ws-strong:#5a3c2f;--ws-button:#fff}.wsig-nav--tuscan{background:rgba(242,223,202,.95)}.wsig-cover--tuscan{background:linear-gradient(90deg,#d49b70 0 34%,#f2dfca 34%);text-align:center}.wsig-tuscan-door{width:min(86%,520px);padding:45px 22px;background:#f8ead9;border-radius:50% 50% 0 0;border:6px solid #ad613f}.wsig-cover--tuscan aside{position:absolute;right:12px;bottom:12px;text-align:right}.wsig-couple--arches .wsig-couple__photo,.wsig-gallery--tuscan .wsig-gallery__item{border-radius:50% 50% 0 0}.wsig-tuscan-tickets article{border:1px dashed #ad613f}.wsig-story-list--postcards article{box-shadow:0 18px 38px rgba(74,48,40,.1);transform:rotate(-1deg)}.wsig-story-list--postcards article:nth-child(even){transform:rotate(1deg)}.wsig-interaction--tuscan,.wsig-closing--tuscan{background:#d9a47c}
.wsig--marble-veil{--ws-bg:#eef0f1;--ws-surface:#f9faf9;--ws-ink:#2e3840;--ws-muted:#71808b;--ws-accent:#a88e68;--ws-strong:#36454f;--ws-button:#fff}.wsig-nav--marble{background:rgba(238,240,241,.95)}.wsig-cover--marble{background:repeating-linear-gradient(112deg,#edf0f1 0 18px,#e3e7e8 18px 20px,#f6f7f7 20px 50px);text-align:center}.wsig-marble-slab{width:min(90%,560px);padding:48px 20px;border-radius:45% 45% 20px 20px;background:rgba(255,255,255,.78);border:1px solid #a88e68}.wsig-marble-index{font-family:Georgia,serif;font-size:4.2rem;color:rgba(168,142,104,.35)}.wsig-couple--sculpture article{padding:25px;background:#f9faf9;border-left:7px solid #a88e68}.wsig-couple--sculpture .wsig-couple__photo{border-radius:45% 45% 4px 4px;filter:grayscale(.25)}.wsig-marble-blocks article{background:linear-gradient(135deg,#fff,#e7ebec);border-left:4px solid #a88e68}.wsig-marble-columns{display:grid;gap:25px;max-width:900px;margin:auto}.wsig-gallery--marble{grid-template-columns:repeat(3,1fr)}.wsig-interaction--marble,.wsig-closing--marble{background:#dfe4e5}
.wsig--pampas-reverie{--ws-bg:#e9dfd0;--ws-surface:#f7f0e7;--ws-ink:#574435;--ws-muted:#89796c;--ws-accent:#9f7856;--ws-strong:#574435;--ws-button:#fff}.wsig-nav--pampas{background:rgba(233,223,208,.95)}.wsig-cover--pampas{background:radial-gradient(circle,#f8f0e5,#e3d3be);text-align:center}.wsig-pampas-bundle{position:absolute;width:95px;height:430px;border-left:5px solid #9f7856;background:repeating-radial-gradient(ellipse at 10px 20px,rgba(184,154,117,.7) 0 8px,transparent 9px 35px)}.wsig-pampas-bundle--left{left:18px;bottom:-50px;transform:rotate(-10deg)}.wsig-pampas-bundle--right{right:18px;top:-50px;transform:rotate(170deg)}.wsig-couple--boho .wsig-couple__photo{border-radius:50%;border:8px solid #f7f0e7}.wsig-pampas-tags article{border-radius:12px}.wsig-story-list--path article{margin-left:30px;border-radius:40px}.wsig-gallery--polaroid .wsig-gallery__item{padding:8px 8px 30px;background:#fff;box-shadow:0 16px 30px rgba(87,68,53,.13);transform:rotate(-2deg)}.wsig-gallery--polaroid .wsig-gallery__item:nth-child(even){transform:rotate(2deg)}.wsig-interaction--pampas,.wsig-closing--pampas{background:#d7c2a7}
.wsig--midnight-crescent{--ws-bg:#07162f;--ws-surface:#10254b;--ws-ink:#fff8e9;--ws-muted:#b3c0d8;--ws-accent:#e0b961;--ws-strong:#e0b961;--ws-button:#07162f}.wsig-nav--midnight{background:rgba(7,22,47,.96);color:#fff8e9}.wsig-cover--midnight{background:radial-gradient(circle,#163a70,#07162f 65%);color:#fff8e9;text-align:center}.wsig-midnight-stars{position:absolute;inset:0;background-image:radial-gradient(circle,#fff 0 1px,transparent 1.5px);background-size:42px 42px;opacity:.35}.wsig-midnight-moon{position:absolute;right:10%;top:10%;width:160px;height:160px;border-radius:50%;background:#e0b961}.wsig-midnight-moon:after{content:"";position:absolute;inset:-12px -20px 12px 30px;border-radius:50%;background:#0a1d3d}.wsig-midnight-couple,.wsig-midnight-event,.wsig-midnight-story,.wsig-midnight-gallery{background:#07162f;color:#fff8e9}.wsig-couple--constellation .wsig-couple__photo,.wsig-gallery--orbits .wsig-gallery__item{border-radius:50%;outline:1px solid #e0b961}.wsig-midnight-planets article{border-radius:50%;text-align:center;background:#10254b}.wsig-story-list--stars article{background:#10254b;border-color:rgba(224,185,97,.4)}.wsig-interaction--midnight{background:#10254b;--ws-surface:#07162f;--ws-muted:#b3c0d8}.wsig-closing--midnight{background:radial-gradient(circle,#163a70,#07162f);color:#fff8e9}
.wsig--noir-classic{--ws-bg:#0d0d0d;--ws-surface:#171717;--ws-ink:#f3f3ef;--ws-muted:#a9a9a3;--ws-accent:#deded8;--ws-strong:#f3f3ef;--ws-button:#0d0d0d}.wsig-nav--noir{background:rgba(13,13,13,.96);color:#f3f3ef}.wsig-cover--noir{grid-template-columns:1fr;background:#0d0d0d;color:#f3f3ef;padding:0}.wsig-noir-image{height:44%;overflow:hidden;filter:grayscale(1)}.wsig-noir-image img{width:100%;height:100%;object-fit:cover}.wsig-noir-title{padding:25px}.wsig-noir-couple,.wsig-noir-event,.wsig-noir-story,.wsig-noir-gallery{display:grid;grid-template-columns:45px 1fr;gap:18px;background:#f1f1ed;color:#111}.wsig-couple--film article{background:#111;color:#f3f3ef;padding:10px}.wsig-couple--film .wsig-couple__photo{width:100%;border-radius:0;filter:grayscale(1)}.wsig-noir-strip article{border:0;border-bottom:1px solid #777;background:transparent}.wsig-gallery--contact{grid-template-columns:repeat(3,1fr);gap:4px;background:#111;padding:4px}.wsig-gallery--contact .wsig-gallery__item{min-height:120px;filter:grayscale(1)}.wsig-interaction--noir,.wsig-closing--noir{background:#0d0d0d;color:#f3f3ef;--ws-surface:#171717;--ws-muted:#aaa}
.wsig--watercolor-whisper{--ws-bg:#f5f7f1;--ws-surface:#fffefb;--ws-ink:#3d5346;--ws-muted:#74887c;--ws-accent:#6f967f;--ws-strong:#3d5346;--ws-button:#fff}.wsig-nav--watercolor{background:rgba(245,247,241,.94)}.wsig-cover--watercolor{background:radial-gradient(circle at 20% 20%,rgba(116,163,136,.3),transparent 35%),radial-gradient(circle at 80% 70%,rgba(109,145,170,.25),transparent 35%),#f5f7f1;text-align:center}.wsig-watercolor-wash{position:absolute;inset:-30px;filter:blur(30px);background:conic-gradient(from 40deg,rgba(109,145,170,.2),rgba(171,145,100,.18),rgba(116,163,136,.25),rgba(109,145,170,.2))}.wsig-watercolor-paper{width:min(90%,560px);padding:38px 20px;background:rgba(255,255,251,.82);box-shadow:0 24px 60px rgba(61,83,70,.12);transform:rotate(-1deg)}.wsig-couple--watercolor article{padding:18px;background:linear-gradient(150deg,rgba(255,255,255,.9),rgba(225,237,228,.7));border-radius:35px}.wsig-couple--watercolor .wsig-couple__photo,.wsig-gallery--wash .wsig-gallery__item{border-radius:45% 55% 60% 40%/50% 38% 62% 50%}.wsig-watercolor-brushes article{background:linear-gradient(100deg,rgba(115,155,130,.18),rgba(255,255,255,.85),rgba(100,135,160,.15));border-radius:45% 10% 45% 12%/20% 45% 15% 50%}.wsig-interaction--watercolor,.wsig-closing--watercolor{background:linear-gradient(140deg,#dfeae1,#e4ebef)}
.wsig--emerald-luxe{--ws-bg:#064432;--ws-surface:#0c5942;--ws-ink:#fff7e8;--ws-muted:#c7d8d0;--ws-accent:#d0a654;--ws-strong:#d0a654;--ws-button:#064432}.wsig-nav--luxe{background:rgba(6,68,50,.96);color:#fff7e8}.wsig-cover--luxe{background:#064432;color:#fff7e8;text-align:center}.wsig-luxe-monogram{position:absolute;font-family:Georgia,serif;font-size:clamp(7rem,35vw,16rem);color:rgba(208,166,84,.12)}.wsig-luxe-couple,.wsig-luxe-event,.wsig-luxe-story,.wsig-luxe-gallery{background:#064432;color:#fff7e8}.wsig-couple--luxe article{padding:25px;border:1px solid #d0a654;background:#0c5942}.wsig-luxe-diamonds article{border:1px solid #d0a654;background:#0c5942;text-align:center;clip-path:polygon(8% 0,92% 0,100% 15%,100% 85%,92% 100%,8% 100%,0 85%,0 15%)}.wsig-story-list--goldline article{background:#0c5942;border-color:#d0a654}.wsig-gallery--gold .wsig-gallery__item{border:2px solid #d0a654}.wsig-interaction--luxe{background:#0c5942;--ws-surface:#064432;--ws-muted:#c7d8d0}.wsig-closing--luxe{background:radial-gradient(circle,#0c5942,#043326);color:#fff7e8}
.wsig--letterpress-heirloom{--ws-bg:#f1e7d4;--ws-surface:#fbf4e8;--ws-ink:#5b4636;--ws-muted:#8a7869;--ws-accent:#9b744d;--ws-strong:#5b4636;--ws-button:#fff}.wsig-nav--heirloom{background:rgba(241,231,212,.95)}.wsig-cover--heirloom{background:repeating-linear-gradient(0deg,rgba(91,70,54,.025) 0 1px,transparent 1px 4px),#f1e7d4;text-align:center}.wsig-heirloom-card{width:min(92%,590px);padding:42px 22px;border:1px solid #9b744d;outline:1px solid rgba(155,116,77,.4);outline-offset:-12px;background:#fbf4e8}.wsig-couple--postcard article{padding:12px 12px 24px;background:#fbf4e8;border:1px solid #9b744d}.wsig-couple--postcard .wsig-couple__photo{width:100%;border-radius:0}.wsig-heirloom-stamps article{border:10px dotted #f1e7d4;outline:1px solid #9b744d}.wsig-heirloom-letter{max-width:780px;margin:auto;padding:35px;background:#fbf4e8;font-family:Georgia,serif;line-height:1.8}.wsig-gallery--scrapbook .wsig-gallery__item{padding:7px 7px 27px;background:#fff;box-shadow:0 14px 30px rgba(91,70,54,.13)}.wsig-interaction--heirloom,.wsig-closing--heirloom{background:#ddc9aa}
.wsig--java-heritage{--ws-bg:#ead9bd;--ws-surface:#f8edd9;--ws-ink:#59361e;--ws-muted:#816a59;--ws-accent:#9a652d;--ws-strong:#59361e;--ws-button:#fff}.wsig-nav--java{background:rgba(234,217,189,.95)}.wsig-cover--java{background:linear-gradient(90deg,#4d2917 0 17%,#ead9bd 17% 83%,#4d2917 83%);text-align:center}.wsig-cover--java:before,.wsig-cover--java:after{content:"";position:absolute;top:0;bottom:0;width:17%;background:repeating-radial-gradient(circle at 30px 30px,#b77d3d 0 2px,transparent 3px 17px)}.wsig-cover--java:before{left:0}.wsig-cover--java:after{right:0}.wsig-java-gunungan{position:absolute;bottom:0;left:50%;width:260px;height:300px;clip-path:polygon(50% 0,100% 100%,0 100%);background:rgba(154,101,45,.15);transform:translateX(-50%)}.wsig-java-frame{width:min(64%,560px);padding:42px 18px;border-radius:50% 50% 0 0;border:4px double #9a652d;background:#f8edd9}.wsig-couple--heritage article{padding:20px;background:#f8edd9;border:8px double #9a652d}.wsig-couple--heritage .wsig-couple__photo{border-radius:50% 50% 0 0}.wsig-java-pendopo article{border:8px double #9a652d}.wsig-story-list--heritage article{border:8px double #9a652d}.wsig-gallery--batik{padding:10px;background:#4d2917}.wsig-gallery--batik .wsig-gallery__item{border:7px double #b77d3d}.wsig-interaction--java,.wsig-closing--java{background:#4d2917;color:#f8edd9;--ws-surface:#664027;--ws-muted:#d9c7ad}

@media(min-width:760px){.wsig-nav{height:64px;min-height:64px;padding:0 28px}.wsig-brand span{display:block}.wsig-nav nav{gap:22px}.wsig-nav nav button{font-size:.62rem}.wsig-section{padding:96px clamp(30px,7vw,90px)}.wsig-couple{grid-template-columns:1fr auto 1fr}.wsig-event-cards,.wsig-origin-table,.wsig-sage-calendar,.wsig-tuscan-tickets,.wsig-marble-blocks,.wsig-pampas-tags,.wsig-midnight-planets,.wsig-noir-strip,.wsig-watercolor-brushes,.wsig-luxe-diamonds,.wsig-heirloom-stamps,.wsig-java-pendopo{grid-template-columns:1fr 1fr}.wsig-story-list{grid-template-columns:repeat(3,1fr)}.wsig-gallery{grid-template-columns:repeat(3,1fr)}.wsig-interaction{grid-template-columns:repeat(3,1fr)}.wsig-cover--sage,.wsig-cover--noir{grid-template-columns:1fr 1fr}.wsig-sage-image,.wsig-noir-image{height:100%}.wsig-gallery--contact{grid-template-columns:repeat(6,1fr)}.wsig-marble-columns{grid-template-columns:repeat(3,1fr)}}
.preview-frame--cinematic.is-mobile .wsig-nav{height:58px;min-height:58px;padding:0 9px}.preview-frame--cinematic.is-mobile .wsig-brand span{display:none}.preview-frame--cinematic.is-mobile .wsig-section{padding:68px 17px}.preview-frame--cinematic.is-mobile .wsig-couple,.preview-frame--cinematic.is-mobile .wsig-event-cards,.preview-frame--cinematic.is-mobile .wsig-origin-table,.preview-frame--cinematic.is-mobile .wsig-sage-calendar,.preview-frame--cinematic.is-mobile .wsig-tuscan-tickets,.preview-frame--cinematic.is-mobile .wsig-marble-blocks,.preview-frame--cinematic.is-mobile .wsig-pampas-tags,.preview-frame--cinematic.is-mobile .wsig-midnight-planets,.preview-frame--cinematic.is-mobile .wsig-noir-strip,.preview-frame--cinematic.is-mobile .wsig-watercolor-brushes,.preview-frame--cinematic.is-mobile .wsig-luxe-diamonds,.preview-frame--cinematic.is-mobile .wsig-heirloom-stamps,.preview-frame--cinematic.is-mobile .wsig-java-pendopo,.preview-frame--cinematic.is-mobile .wsig-story-list,.preview-frame--cinematic.is-mobile .wsig-interaction,.preview-frame--cinematic.is-mobile .wsig-marble-columns{grid-template-columns:1fr}.preview-frame--cinematic.is-mobile .wsig-gallery{grid-template-columns:repeat(2,1fr)}.preview-frame--cinematic.is-mobile .wsig-cover--sage,.preview-frame--cinematic.is-mobile .wsig-cover--noir{grid-template-columns:1fr}.preview-frame--cinematic.is-mobile .wsig-sage-image,.preview-frame--cinematic.is-mobile .wsig-noir-image{height:40%}.preview-frame--cinematic.is-desktop .wsig-nav{height:64px;min-height:64px;padding:0 28px}.preview-frame--cinematic.is-desktop .wsig-brand span{display:block}.preview-frame--cinematic.is-desktop .wsig-section{padding:90px clamp(30px,7cqw,90px)}.preview-frame--cinematic.is-desktop .wsig-couple{grid-template-columns:1fr auto 1fr}.preview-frame--cinematic.is-desktop .wsig-event-cards,.preview-frame--cinematic.is-desktop .wsig-origin-table,.preview-frame--cinematic.is-desktop .wsig-sage-calendar,.preview-frame--cinematic.is-desktop .wsig-tuscan-tickets,.preview-frame--cinematic.is-desktop .wsig-marble-blocks,.preview-frame--cinematic.is-desktop .wsig-pampas-tags,.preview-frame--cinematic.is-desktop .wsig-midnight-planets,.preview-frame--cinematic.is-desktop .wsig-noir-strip,.preview-frame--cinematic.is-desktop .wsig-watercolor-brushes,.preview-frame--cinematic.is-desktop .wsig-luxe-diamonds,.preview-frame--cinematic.is-desktop .wsig-heirloom-stamps,.preview-frame--cinematic.is-desktop .wsig-java-pendopo{grid-template-columns:1fr 1fr}.preview-frame--cinematic.is-desktop .wsig-story-list{grid-template-columns:repeat(3,1fr)}.preview-frame--cinematic.is-desktop .wsig-gallery{grid-template-columns:repeat(3,1fr)}.preview-frame--cinematic.is-desktop .wsig-interaction{grid-template-columns:repeat(3,1fr)}.preview-frame--cinematic.is-desktop .wsig-cover--sage,.preview-frame--cinematic.is-desktop .wsig-cover--noir{grid-template-columns:1fr 1fr}.preview-frame--cinematic.is-desktop .wsig-sage-image,.preview-frame--cinematic.is-desktop .wsig-noir-image{height:100%}.preview-frame--cinematic.is-desktop .wsig-gallery--contact{grid-template-columns:repeat(6,1fr)}
@media(max-height:650px) and (max-width:699px){.wsig-cover{padding:11px}.wsig-cover small{font-size:.42rem}.wsig-cover h1{font-size:clamp(2.1rem,10vw,3rem);margin:7px 0}.wsig-cover p{font-size:.55rem}.wsig-guest{margin:7px auto}.wsig-open{padding:8px 13px}.wsig-sage-image,.wsig-noir-image{height:34%}}
@media(prefers-reduced-motion:reduce){.wsig *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.wsig-reveal{opacity:1!important;transform:none!important}}


/* ==========================================================================
   STEP 11R1 — PRICE-FREE PUBLIC CATALOG + DYNAMIC TESTIMONIAL CAROUSEL
   Public prices are intentionally omitted. Testimonials grow from data and
   scroll horizontally with hidden scrollbars on mobile and desktop.
   ========================================================================== */
.template-card__body{grid-template-columns:minmax(0,1fr);min-height:62px;padding:12px 12px 7px}
.template-card__body h3{min-height:2.5em}
.reference-lower-grid__inner{grid-template-columns:1fr}
.reference-testimonial{min-width:0;overflow:hidden}
.reference-testimonial__heading{margin-bottom:12px}
.reference-testimonial__controls{display:flex;gap:7px}
.reference-testimonial__controls[hidden]{display:none}
.reference-testimonial__controls button{width:32px;height:32px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);cursor:pointer;box-shadow:0 5px 14px rgba(11,21,48,.06)}
.reference-testimonial__controls button:hover{border-color:var(--blue);color:var(--blue);transform:translateY(-1px)}
.reference-testimonial__viewport{display:flex;gap:12px;min-width:0;overflow-x:auto;overflow-y:hidden;padding:1px 1px 8px;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-inline:contain;touch-action:pan-x;scrollbar-width:none;-ms-overflow-style:none}
.reference-testimonial__viewport::-webkit-scrollbar{display:none;width:0;height:0}
.reference-testimonial__card{position:relative;flex:0 0 min(100%,420px);min-height:157px;border:1px solid var(--line);border-radius:12px;padding:15px;background:#fff;scroll-snap-align:start;box-shadow:0 7px 20px rgba(11,21,48,.045)}
.reference-testimonial__card>b{color:#d49a45;font-size:1.8rem;line-height:1}
.reference-testimonial__card>p{font-size:.72rem;color:#465066;line-height:1.6;min-height:48px}
.reference-testimonial__card>div{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center}
.reference-testimonial__card>div strong{font-size:.68rem}
.reference-testimonial__card>div small{font-size:.58rem;color:#7f8798}
.reference-testimonial__card>em{position:absolute;right:14px;bottom:15px;font-size:.67rem;color:#f4a300;font-style:normal;letter-spacing:.04em}
@media(min-width:900px){.reference-lower-grid__inner{grid-template-columns:1.35fr .85fr;align-items:start}.reference-testimonial__card{flex-basis:100%}}

/* ========================================================================== */
/* STEP 12 — NEXORA INVITE LUXURY PUBLIC REDESIGN                            */
/* Navy · Ivory · Champagne Gold. Mobile-first. Public prices remain hidden. */
/* ========================================================================== */
:root{
  --lux-navy:#06152f;
  --lux-navy-2:#0c2855;
  --lux-ivory:#fffaf1;
  --lux-paper:#fffdf8;
  --lux-gold:#c7912e;
  --lux-gold-light:#edcb7c;
  --lux-gold-dark:#8e5d0e;
  --lux-ink:#101d35;
  --lux-muted:#667083;
  --lux-line:rgba(176,128,40,.22);
  --lux-shadow:0 18px 50px rgba(6,21,47,.10);
  --lux-shadow-gold:0 12px 32px rgba(177,121,24,.25);
}
body{background:var(--lux-paper);color:var(--lux-ink)}
body,.lux-home,.lux-catalog{overflow-x:hidden}
.lux-home,.lux-catalog{background:
  radial-gradient(circle at 12% 6%,rgba(214,164,72,.05),transparent 24%),
  radial-gradient(circle at 90% 26%,rgba(214,164,72,.035),transparent 22%),
  var(--lux-paper)}
.lux-section[id]{scroll-margin-top:86px}
.button--gold{border-color:#e8c36e;background:linear-gradient(135deg,#9e6714,#e0af4e 48%,#a66b13);color:#fff;box-shadow:var(--lux-shadow-gold);text-shadow:0 1px 0 rgba(0,0,0,.16)}
.button--gold:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(177,121,24,.32)}
.button--ghost{border-color:rgba(177,128,40,.30);background:rgba(255,255,255,.88);color:var(--lux-ink)}
.button--ghost:hover{border-color:var(--lux-gold);color:var(--lux-gold-dark);transform:translateY(-1px)}

/* Header */
.luxury-header{position:sticky;top:0;z-index:100;background:rgba(6,21,47,.97);border:0;border-bottom:1px solid rgba(226,177,78,.55);backdrop-filter:blur(18px);box-shadow:0 7px 24px rgba(6,21,47,.16)}
.luxury-header .site-header__inner{height:72px}
.luxury-brand{min-width:0;gap:9px}
.luxury-brand .brand-logo{filter:sepia(1) saturate(1.55) hue-rotate(350deg) brightness(1.35);width:142px;max-height:46px;object-fit:contain;object-position:left center}
.luxury-brand .brand-module{color:var(--lux-gold-light);border-color:rgba(237,203,124,.35);font-family:Georgia,"Times New Roman",serif;letter-spacing:.22em;font-size:.62rem}
.luxury-header .site-header__actions{gap:7px}
.luxury-order-button{display:none;padding:10px 15px;border-radius:10px;font-size:.78rem;white-space:nowrap}
.luxury-menu-button{border-color:rgba(237,203,124,.35);background:rgba(255,255,255,.06);color:#fff;border-radius:10px}
.luxury-mobile-menu{background:#071832;border-color:rgba(237,203,124,.2);padding:8px 16px 18px;color:#fff;box-shadow:0 22px 45px rgba(0,0,0,.22)}
.luxury-mobile-menu>a,.luxury-mobile-menu details{border-bottom:1px solid rgba(255,255,255,.10)}
.luxury-mobile-menu>a{padding:12px 5px}
.luxury-mobile-menu summary{list-style:none;padding:12px 5px;cursor:pointer}
.luxury-mobile-menu summary::-webkit-details-marker{display:none}
.luxury-mobile-menu details a{display:block;padding:9px 18px;color:#d5ddeb;font-size:.86rem}
.luxury-mobile-menu__cta{margin-top:10px!important;border:1px solid #d9aa4c!important;border-radius:10px;background:linear-gradient(135deg,#9e6714,#dba944);text-align:center;font-weight:800}
.luxury-nav{align-items:stretch;height:100%;gap:30px}
.luxury-nav>a,.luxury-nav__dropdown>button{position:relative;display:flex;align-items:center;height:100%;border:0;background:transparent;color:#f7f4ed;font-size:.84rem;font-weight:650;cursor:pointer}
.luxury-nav>a:after,.luxury-nav__dropdown>button:after{content:"";position:absolute;left:50%;right:50%;bottom:0;height:2px;background:var(--lux-gold-light);transition:.22s ease}
.luxury-nav>a:hover,.luxury-nav>a.is-active,.luxury-nav__dropdown:hover>button,.luxury-nav__dropdown.is-active>button{color:var(--lux-gold-light)}
.luxury-nav>a:hover:after,.luxury-nav>a.is-active:after,.luxury-nav__dropdown:hover>button:after,.luxury-nav__dropdown.is-active>button:after{left:0;right:0}
.luxury-nav__dropdown{position:relative;height:100%}
.luxury-nav__dropdown>button span{margin-left:5px;font-size:.7rem}
.luxury-nav__menu{position:absolute;top:calc(100% + 1px);left:50%;display:none;width:210px;padding:8px;border:1px solid rgba(201,145,46,.25);border-radius:0 0 14px 14px;background:#fffdf8;color:var(--lux-ink);box-shadow:0 18px 45px rgba(6,21,47,.18);transform:translateX(-50%)}
.luxury-nav__menu.is-open,.luxury-nav__dropdown:hover .luxury-nav__menu{display:grid}
.luxury-nav__menu a{padding:10px 12px;border-radius:8px;font-size:.78rem}
.luxury-nav__menu a:hover{background:#f8eed9;color:var(--lux-gold-dark)}

/* Shared luxury ornaments and headings */
.lux-ornament{position:absolute;z-index:0;width:210px;height:310px;opacity:.18;pointer-events:none}
.lux-ornament:before,.lux-ornament:after{content:"";position:absolute;border:1px solid var(--lux-gold);border-radius:52% 48% 62% 38%}
.lux-ornament:before{inset:16px 70px 45px 70px;transform:rotate(22deg)}
.lux-ornament:after{inset:80px 20px 0 105px;transform:rotate(-34deg)}
.lux-ornament--left{left:-88px;top:120px;transform:rotate(-22deg)}
.lux-ornament--right{right:-92px;top:110px;transform:scaleX(-1) rotate(-22deg)}
.lux-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:14px;color:var(--lux-gold);font-size:.72rem;font-weight:800;letter-spacing:.16em}
.lux-eyebrow i{width:34px;height:1px;background:var(--lux-gold-light)}
.lux-section{position:relative;padding:66px 0}
.lux-section-heading{position:relative;z-index:1;width:min(100%,780px);margin:0 auto 30px;text-align:center}
.lux-section-heading .lux-emblem{display:block;margin-bottom:8px;color:var(--lux-gold);font-size:1.65rem;line-height:1}
.lux-section-heading .lux-emblem:before,.lux-section-heading .lux-emblem:after{content:"";display:inline-block;vertical-align:middle;width:54px;height:1px;margin:0 12px;background:linear-gradient(90deg,transparent,var(--lux-gold))}
.lux-section-heading .lux-emblem:after{background:linear-gradient(90deg,var(--lux-gold),transparent)}
.lux-section-heading h1,.lux-section-heading h2{margin:0 0 10px;font-family:Georgia,"Times New Roman",serif;font-weight:500;color:var(--lux-ink);line-height:1.08;letter-spacing:-.025em}
.lux-section-heading h1{font-size:clamp(2.2rem,8vw,4rem)}
.lux-section-heading h2{font-size:clamp(2rem,7vw,3.5rem)}
.lux-section-heading p{margin:0 auto;color:var(--lux-muted);font-size:.92rem;line-height:1.65}
.lux-section-heading--inline{display:flex;align-items:end;justify-content:space-between;width:100%;max-width:none;text-align:left}
.lux-section-heading--inline h2{font-size:clamp(1.7rem,5vw,2.5rem)}
.lux-section-heading--inline>a{color:var(--lux-gold-dark);font-weight:800;font-size:.78rem;white-space:nowrap}
.lux-kicker{display:block;color:var(--lux-gold);font-size:.65rem;font-weight:900;letter-spacing:.18em;margin-bottom:4px}

/* Hero */
.lux-hero{position:relative;overflow:hidden;padding:40px 0 0;background:linear-gradient(135deg,#fffdf8 0%,#fff9ef 52%,#f9f0e1 100%);border-bottom:1px solid var(--lux-line)}
.lux-hero:after{content:"";position:absolute;left:-8%;right:-8%;bottom:-65px;height:130px;border-radius:50% 50% 0 0;background:linear-gradient(180deg,var(--lux-navy),#081b3b);border-top:2px solid var(--lux-gold);z-index:0}
.lux-hero__grid{position:relative;z-index:2;display:grid;gap:36px;align-items:center}
.lux-hero__copy{position:relative;z-index:3}
.lux-hero__copy h1{margin:0 0 18px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.35rem,10vw,4.65rem);font-weight:500;line-height:1.04;letter-spacing:-.045em;color:var(--lux-ink);text-wrap:balance}
.lux-hero__copy>p{max-width:650px;margin-bottom:22px;color:#4f5a70;font-size:1rem;line-height:1.7}
.lux-hero__actions{display:flex;flex-wrap:wrap;gap:11px}
.lux-hero__highlights{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:24px}
.lux-hero__highlights>span{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center}
.lux-hero__highlights b{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--lux-line);border-radius:50%;color:var(--lux-gold-dark);background:#fff}
.lux-hero__highlights strong,.lux-hero__highlights small{display:block}
.lux-hero__highlights strong{font-size:.72rem}
.lux-hero__highlights small{font-size:.58rem;color:#778092}
.lux-hero__visual{position:relative;z-index:2;min-height:390px;display:grid;place-items:center}
.lux-showcase{position:relative;width:min(100%,510px);height:370px;border:1px solid rgba(193,137,38,.30);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(247,233,208,.82));box-shadow:var(--lux-shadow)}
.lux-showcase__paper{position:absolute;width:220px;height:290px;border:1px solid rgba(177,128,40,.24);border-radius:9px;background:#fffdf8;box-shadow:0 18px 36px rgba(6,21,47,.08)}
.lux-showcase__paper:before{content:"";position:absolute;inset:20px;border:1px solid rgba(177,128,40,.24);border-radius:50% 50% 10px 10px}
.lux-showcase__paper--one{left:28px;top:34px;transform:rotate(-8deg)}
.lux-showcase__paper--two{right:20px;top:40px;transform:rotate(9deg);background:linear-gradient(150deg,#071932,#102a56)}
.lux-phone{position:absolute;z-index:4;left:50%;top:18px;width:192px;height:340px;padding:8px;border:5px solid #101722;border-radius:30px;background:#101722;box-shadow:0 25px 45px rgba(6,21,47,.28);transform:translateX(-50%)}
.lux-phone__speaker{position:absolute;z-index:2;left:50%;top:5px;width:54px;height:7px;border-radius:999px;background:#05080d;transform:translateX(-50%)}
.lux-phone img{width:100%;height:100%;object-fit:cover;border-radius:20px}
.lux-phone>span{position:absolute;left:50%;bottom:38px;padding:8px 13px;border-radius:999px;background:linear-gradient(135deg,#9e6714,#dda945);color:#fff;font-size:.6rem;font-weight:800;transform:translateX(-50%);white-space:nowrap}
.lux-showcase__leaf{position:absolute;z-index:5;width:92px;height:160px;border:2px solid rgba(64,93,50,.38);border-radius:50%;transform:rotate(36deg)}
.lux-showcase__leaf:before,.lux-showcase__leaf:after{content:"";position:absolute;width:28px;height:54px;border-radius:50%;background:rgba(65,104,57,.52)}
.lux-showcase__leaf:before{left:-13px;top:35px;transform:rotate(-36deg)}
.lux-showcase__leaf:after{right:-13px;bottom:32px;transform:rotate(36deg)}
.lux-showcase__leaf--one{left:-28px;bottom:-8px}
.lux-showcase__leaf--two{right:-20px;top:-12px;transform:scaleX(-1) rotate(36deg)}
.lux-quality-seal{position:absolute;z-index:6;right:-7px;bottom:32px;display:grid;place-items:center;width:112px;height:112px;border:1px solid var(--lux-gold);border-radius:50%;background:rgba(255,253,248,.95);box-shadow:0 14px 35px rgba(6,21,47,.10);text-align:center}
.lux-quality-seal:before{content:"";position:absolute;inset:8px;border:1px solid rgba(201,145,46,.35);border-radius:50%}
.lux-quality-seal strong,.lux-quality-seal span{position:relative;z-index:1;display:block}
.lux-quality-seal strong{font-family:Georgia,serif;color:var(--lux-gold-dark);font-size:1.55rem;line-height:1}
.lux-quality-seal span{font-size:.58rem;color:#4e586b}
.lux-category-strip{position:relative;z-index:3;display:flex;gap:10px;overflow-x:auto;margin-top:30px;padding:12px 12px 19px;background:rgba(255,253,248,.96);border:1px solid var(--lux-line);border-radius:18px 18px 0 0;box-shadow:0 -4px 22px rgba(6,21,47,.06);scrollbar-width:none}
.lux-category-strip::-webkit-scrollbar{display:none}
.lux-category-strip>a{flex:0 0 230px;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:11px 12px;border-right:1px solid var(--lux-line)}
.lux-category-strip>a:last-child{border-right:0}
.lux-category-strip>a>span{display:grid;place-items:center;width:43px;height:43px;border:1px solid var(--lux-line);border-radius:50%;color:var(--lux-gold-dark);font-size:1.2rem;background:#fff}
.lux-category-strip strong,.lux-category-strip small{display:block}
.lux-category-strip strong{font-family:Georgia,serif;font-size:.88rem}
.lux-category-strip small{font-size:.58rem;color:#737c8c}
.lux-category-strip b{color:var(--lux-gold-dark)}

/* Template cards and featured carousel */
.lux-featured{background:#fffdf9}
.lux-featured__viewport{display:flex;gap:12px;overflow-x:auto;padding:4px 2px 13px;scroll-snap-type:x mandatory;scrollbar-width:none}
.lux-featured__viewport::-webkit-scrollbar{display:none}
.lux-featured__viewport .luxury-template-card{flex:0 0 76%;scroll-snap-align:start}
.luxury-template-card{border:1px solid rgba(177,128,40,.20);border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(6,21,47,.065);overflow:hidden}
.luxury-template-card:hover{transform:translateY(-3px);border-color:rgba(177,128,40,.42);box-shadow:0 16px 36px rgba(6,21,47,.11)}
.luxury-template-card .template-card__media{aspect-ratio:16/9;background:#f6efe3}
.luxury-template-card .template-card__media img{transition:transform .35s ease}
.luxury-template-card:hover .template-card__media img{transform:scale(1.025)}
.luxury-template-card .favorite{display:grid;place-items:center;width:29px;height:29px;top:7px;left:7px;background:rgba(255,255,255,.92);border:1px solid rgba(177,128,40,.18);color:#6c7484;font-size:.95rem}
.luxury-template-card .badge{top:7px;right:7px;border-radius:7px;font-size:.5rem;padding:4px 7px}
.luxury-template-card .badge--premium{background:linear-gradient(135deg,#8f5e10,#e2b153);color:#fff}
.luxury-template-card .badge--new{background:#d8f5e3;color:#116340}
.luxury-template-card .template-card__body{min-height:48px;padding:10px 10px 3px;text-align:center;display:block}
.luxury-template-card .template-card__body h3{min-height:0;margin:0;font-family:Georgia,serif;font-size:.88rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.luxury-template-card .template-card__actions{grid-template-columns:1fr 1fr;gap:6px;padding:8px 9px 11px}
.luxury-template-card .template-card__actions .button{padding:7px 6px;border-radius:8px;font-size:.62rem}

/* Features */
.lux-features{background:linear-gradient(180deg,#fffaf1,#fffdf9)}
.lux-features__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lux-features__grid article{position:relative;min-height:190px;padding:24px 14px 20px;border:1px solid rgba(177,128,40,.20);border-radius:16px;background:rgba(255,255,255,.86);text-align:center;box-shadow:0 10px 30px rgba(6,21,47,.06)}
.lux-features__grid article>span{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 13px;border:1px solid var(--lux-line);border-radius:50%;background:radial-gradient(circle,#fff,#f7ead0);color:var(--lux-gold-dark);font-size:1.65rem;box-shadow:0 7px 18px rgba(177,128,40,.10)}
.lux-features__grid h3{margin:0 0 7px;font-family:Georgia,serif;font-size:1rem}
.lux-features__grid p{margin:0;color:var(--lux-muted);font-size:.68rem;line-height:1.55}
.lux-features__grid article>i{position:absolute;left:50%;bottom:13px;width:42px;height:1px;background:var(--lux-gold);transform:translateX(-50%)}

/* Workflow */
.lux-workflow{background:#fffdf9}
.lux-workflow__line{display:none}
.lux-workflow__grid{display:grid;gap:12px}
.lux-workflow__grid article{position:relative;display:grid;grid-template-columns:auto auto 1fr;column-gap:12px;align-items:center;padding:16px;border:1px solid rgba(177,128,40,.20);border-radius:15px;background:#fff;box-shadow:0 9px 26px rgba(6,21,47,.055)}
.lux-workflow__icon{grid-row:1/3;display:grid;place-items:center;width:58px;height:58px;border:1px solid var(--lux-line);border-radius:50%;background:radial-gradient(circle,#fff,#f8ead0);color:var(--lux-gold-dark);font-size:1.25rem;font-weight:800}
.lux-workflow__grid article>b{align-self:end;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--lux-gold);color:#fff;font-size:.68rem}
.lux-workflow__grid h3{align-self:end;margin:0;font-family:Georgia,serif;font-size:1rem}
.lux-workflow__grid p{grid-column:2/4;margin:3px 0 0;color:var(--lux-muted);font-size:.68rem}
.lux-workflow__grid article>i{display:none}

/* Testimonials */
.lux-testimonials{background:linear-gradient(180deg,#fffaf1,#fffdf9)}
.lux-testimonials__heading{padding-bottom:12px}
.lux-carousel-controls{display:flex;justify-content:center;gap:8px;margin-top:16px}
.lux-carousel-controls[hidden]{display:none}
.lux-carousel-controls button{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--lux-line);border-radius:50%;background:#fff;color:var(--lux-gold-dark);font-size:1.35rem;cursor:pointer;box-shadow:0 6px 18px rgba(6,21,47,.06)}
.lux-carousel-controls button:hover{background:var(--lux-gold);color:#fff}
.lux-testimonials__viewport{display:flex;gap:14px;overflow-x:auto;padding:3px 2px 14px;scroll-snap-type:x mandatory;scrollbar-width:none}
.lux-testimonials__viewport::-webkit-scrollbar{display:none}
.lux-testimonial-card{position:relative;flex:0 0 88%;min-height:290px;padding:27px 21px;border:1px solid rgba(177,128,40,.20);border-radius:18px;background:#fff;text-align:center;scroll-snap-align:center;box-shadow:0 12px 35px rgba(6,21,47,.07)}
.lux-testimonial-card__quote{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 18px;border:1px solid var(--lux-line);border-radius:50%;color:var(--lux-gold);font-family:Georgia,serif;font-size:2.5rem;line-height:1}
.lux-testimonial-card>p{min-height:72px;margin:0 auto 16px;color:#4d576a;font-size:.84rem;line-height:1.65}
.lux-testimonial-card__person{display:flex;justify-content:center;align-items:center;gap:10px}
.lux-testimonial-card__person>span{display:grid;place-items:center;width:52px;height:52px;border:1px solid var(--lux-line);border-radius:50%;background:linear-gradient(135deg,var(--lux-navy),var(--lux-navy-2));color:#fff;font-family:Georgia,serif;font-size:1.15rem}
.lux-testimonial-card__person strong,.lux-testimonial-card__person small{display:block;text-align:left}
.lux-testimonial-card__person strong{font-family:Georgia,serif}
.lux-testimonial-card__person small{color:#8991a0;font-size:.65rem}
.lux-testimonial-card>em{display:block;margin-top:15px;color:var(--lux-gold);font-style:normal;letter-spacing:.11em}

/* CTA */
.lux-cta{background:#fffdf9;padding-top:54px}
.lux-cta__inner{position:relative;padding:40px 18px 32px;border:1px solid rgba(177,128,40,.30);border-radius:24px;background:linear-gradient(135deg,#fffdf8,#fff8ec);box-shadow:var(--lux-shadow);overflow:hidden}
.lux-cta__inner:before,.lux-cta__inner:after{content:"";position:absolute;width:250px;height:250px;border:40px solid var(--lux-navy);border-radius:50%;opacity:.95}
.lux-cta__inner:before{left:-170px;bottom:-185px}
.lux-cta__inner:after{right:-170px;bottom:-185px}
.lux-cta__benefits{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:20px}
.lux-cta__benefits article{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid var(--lux-line);border-radius:14px;background:#fff}
.lux-cta__benefits article>span{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--lux-line);border-radius:50%;color:var(--lux-gold-dark);font-size:1.25rem}
.lux-cta__benefits strong,.lux-cta__benefits small{display:block}
.lux-cta__benefits strong{font-family:Georgia,serif}
.lux-cta__benefits small{color:var(--lux-muted);font-size:.65rem}
.lux-cta__panel{position:relative;z-index:2;padding:22px 16px;border:1px solid rgba(177,128,40,.35);border-radius:17px;background:rgba(255,255,255,.80);text-align:center}
.lux-cta__panel>strong{font-family:Georgia,serif;font-size:1.25rem}
.lux-cta__panel>p{margin:5px 0 18px;color:var(--lux-muted)}
.lux-cta__panel>div{display:grid;gap:9px}
.lux-cta__trust{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
.lux-cta__trust>span{display:grid;grid-template-columns:auto 1fr;column-gap:7px;align-items:center}
.lux-cta__trust b{grid-row:1/3;color:var(--lux-gold-dark)}
.lux-cta__trust strong,.lux-cta__trust small{display:block}
.lux-cta__trust strong{font-size:.68rem}
.lux-cta__trust small{font-size:.55rem;color:#7c8492}

/* Catalog */
.lux-catalog__hero{position:relative;padding:38px 0 24px;background:linear-gradient(135deg,#fffdf8,#fff7e9);border-bottom:1px solid var(--lux-line);overflow:hidden}
.lux-catalog__hero .lux-section-heading{margin-bottom:24px}
.lux-catalog__filterbar{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:11px;border:1px solid rgba(177,128,40,.22);border-radius:15px;background:rgba(255,255,255,.92);box-shadow:0 12px 34px rgba(6,21,47,.07)}
.lux-catalog__filterbar label{display:flex;align-items:center;gap:8px;min-width:0;height:45px;padding:0 11px;border:1px solid rgba(177,128,40,.18);border-radius:10px;background:#fff;color:var(--lux-gold-dark)}
.lux-catalog__filterbar label span{flex:0 0 auto}
.lux-catalog__filterbar input,.lux-catalog__filterbar select{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--lux-ink);font-size:.72rem}
.lux-catalog__search{grid-column:1/-1}
.lux-catalog__sort{display:none!important}
.lux-catalog__categories{position:relative;z-index:2;display:flex;gap:8px;overflow-x:auto;padding:13px 1px 2px;scrollbar-width:none}
.lux-catalog__categories::-webkit-scrollbar{display:none}
.lux-catalog__categories button{flex:0 0 auto;min-width:105px;padding:8px 14px;border:1px solid rgba(177,128,40,.20);border-radius:999px;background:#fff;color:#4f596c;font-size:.67rem;cursor:pointer}
.lux-catalog__categories button.is-active{background:linear-gradient(135deg,#9d6714,#dba944);color:#fff;border-color:#dba944;box-shadow:0 8px 18px rgba(177,121,24,.20)}
.lux-catalog__content{padding:22px 0 42px;scroll-margin-top:78px}
.lux-catalog__toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;color:#7b8493;font-size:.68rem}
.lux-catalog__toolbar button{border:0;background:transparent;color:var(--lux-gold-dark);font-size:.68rem;font-weight:800;cursor:pointer}
.lux-catalog__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.lux-catalog__empty{text-align:center;padding:60px 20px;border:1px dashed rgba(177,128,40,.35);border-radius:18px;background:#fff}
.lux-catalog__empty>span{font-size:2rem;color:var(--lux-gold)}
.lux-catalog__empty h2{font-family:Georgia,serif}
.lux-catalog__empty p{color:var(--lux-muted)}
.lux-pagination{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:22px}
.lux-pagination[hidden]{display:none}
.lux-pagination button,.lux-pagination span{display:grid;place-items:center;min-width:32px;height:32px;border:1px solid rgba(177,128,40,.22);border-radius:8px;background:#fff;color:#566073;font-size:.72rem}
.lux-pagination button{cursor:pointer}
.lux-pagination button.is-active{background:linear-gradient(135deg,#9d6714,#dba944);border-color:#dba944;color:#fff;box-shadow:0 7px 17px rgba(177,121,24,.20)}
.lux-pagination button:disabled{opacity:.35;cursor:not-allowed}

/* Footer */
.luxury-footer{padding:43px 0 18px;background:linear-gradient(135deg,#041026,#071d3d);border-top:2px solid var(--lux-gold);color:#d9e0ec}
.luxury-footer__grid{display:grid;gap:25px}
.luxury-footer__brand .brand-logo{width:190px;max-height:62px;object-fit:contain;object-position:left;filter:sepia(1) saturate(1.4) hue-rotate(350deg) brightness(1.3)}
.luxury-footer h3{margin:0 0 9px;color:var(--lux-gold-light);font-family:Georgia,serif}
.luxury-footer p,.luxury-footer a{display:block;margin:0 0 7px;color:#aebbd0;font-size:.78rem}
.luxury-footer__brand p{max-width:350px;line-height:1.7}
.luxury-footer__contact .button{display:inline-flex;margin-top:8px;color:#fff}
.luxury-footer__bottom{display:flex;flex-direction:column;gap:8px;margin-top:26px;padding-top:14px;border-top:1px solid rgba(255,255,255,.10);color:#7f91ad;font-size:.65rem}

@media(min-width:520px){
  .lux-featured__viewport .luxury-template-card{flex-basis:44%}
  .lux-catalog__filterbar{grid-template-columns:repeat(4,1fr)}
  .lux-catalog__search{grid-column:1/-1}
  .lux-catalog__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
  .lux-cta__benefits{grid-template-columns:repeat(3,1fr)}
  .lux-cta__panel>div{grid-template-columns:1.25fr 1fr}
}

@media(min-width:760px){
  .luxury-order-button{display:inline-flex}
  .lux-hero{padding-top:54px}
  .lux-hero__highlights{grid-template-columns:repeat(4,1fr)}
  .lux-showcase{height:420px}
  .lux-phone{width:222px;height:390px}
  .lux-quality-seal{right:16px;bottom:38px}
  .lux-category-strip{overflow:visible}
  .lux-category-strip>a{flex:1 1 0}
  .lux-featured__viewport .luxury-template-card{flex-basis:29%}
  .lux-features__grid{grid-template-columns:repeat(3,1fr)}
  .lux-workflow__grid{grid-template-columns:repeat(5,1fr);gap:12px}
  .lux-workflow__grid article{display:block;min-height:240px;padding:25px 16px;text-align:center}
  .lux-workflow__icon{margin:0 auto 15px}
  .lux-workflow__grid article>b{margin:-8px auto 9px}
  .lux-workflow__grid h3{font-size:1.05rem}
  .lux-workflow__grid p{margin:6px 0 0}
  .lux-workflow__grid article>i{display:block;position:absolute;right:-14px;top:74px;color:var(--lux-gold);font-size:1.45rem}
  .lux-testimonial-card{flex-basis:47%;min-height:310px}
  .lux-catalog__filterbar{grid-template-columns:minmax(260px,2fr) repeat(4,minmax(120px,1fr));align-items:center}
  .lux-catalog__search{grid-column:auto}
  .lux-catalog__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .luxury-footer__grid{grid-template-columns:1.4fr .7fr .8fr 1.2fr}
  .luxury-footer__bottom{flex-direction:row;justify-content:space-between}
}

@media(min-width:900px){
  .mobile-only{display:none!important}
  .desktop-nav{display:flex}
  .luxury-header .site-header__inner{height:78px}
  .lux-hero__grid{grid-template-columns:1.02fr .98fr;gap:55px;min-height:505px}
  .lux-hero__visual{min-height:480px}
  .lux-showcase{width:520px;height:430px}
  .lux-category-strip{margin-top:0;padding:14px 16px 19px}
  .lux-featured__viewport .luxury-template-card{flex-basis:18.5%}
  .lux-features__grid{grid-template-columns:repeat(3,1fr);gap:17px}
  .lux-features__grid article{min-height:220px;padding:28px 20px}
  .lux-testimonial-card{flex-basis:32%}
  .lux-carousel-controls{position:absolute;left:0;right:0;top:52%;justify-content:space-between;pointer-events:none}
  .lux-carousel-controls button{pointer-events:auto}
  .lux-cta__inner{padding:48px 70px 38px}
  .lux-cta__trust{grid-template-columns:repeat(4,1fr)}
  .lux-catalog__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
  .lux-catalog__sort{display:flex!important}
  .lux-catalog__filterbar{grid-template-columns:minmax(280px,2.4fr) repeat(5,minmax(100px,1fr))}
}

@media(max-width:420px){
  .luxury-brand .brand-logo{width:116px}
  .luxury-brand .brand-module{font-size:.52rem;padding-left:7px}
  .lux-hero__copy h1{font-size:2.25rem}
  .lux-hero__actions .button{flex:1 1 100%}
  .lux-hero__highlights{grid-template-columns:1fr 1fr}
  .lux-showcase{height:330px}
  .lux-phone{width:168px;height:300px}
  .lux-showcase__paper{width:180px;height:240px}
  .lux-quality-seal{width:86px;height:86px;right:-3px;bottom:24px}
  .lux-quality-seal strong{font-size:1.2rem}
  .lux-category-strip>a{flex-basis:205px}
  .lux-features__grid{gap:9px}
  .lux-features__grid article{min-height:180px;padding:20px 10px}
  .lux-features__grid article>span{width:53px;height:53px}
  .lux-features__grid h3{font-size:.9rem}
  .lux-features__grid p{font-size:.62rem}
  .lux-catalog__filterbar{grid-template-columns:1fr 1fr}
  .lux-catalog__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .luxury-template-card .template-card__body h3{font-size:.76rem}
  .luxury-template-card .template-card__actions{grid-template-columns:1fr;padding:7px}
  .luxury-template-card .template-card__actions .button{font-size:.59rem}
}

@media(prefers-reduced-motion:reduce){
  .lux-home *,.lux-catalog *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

/* ========================================================================== 
   NEXORA INVITE — STEP 13 / LOCKED ONE-VIEWPORT PUBLIC EXPERIENCE
   Version 2.6.0 — 2026-08-05
   ========================================================================== */

:root{
  --viewport-header-height:72px;
  --onepage-navy:#06152f;
  --onepage-navy-2:#0b2855;
  --onepage-ivory:#fffaf0;
  --onepage-paper:#fffdf8;
  --onepage-gold:#c78d25;
  --onepage-gold-light:#efcf82;
  --onepage-ink:#0b1932;
  --onepage-muted:#5d687d;
  --onepage-line:rgba(171,119,28,.22);
  --onepage-shadow:0 16px 42px rgba(6,21,47,.10);
}

html.public-shell-locked,
body.public-shell-locked{
  width:100%;
  height:100%;
  min-height:100%;
  overflow:hidden!important;
  overscroll-behavior:none;
}
body.public-shell-locked #app{
  height:100dvh;
  overflow:hidden;
}
.public-shell-locked .luxury-header{
  position:relative;
  top:auto;
  flex:0 0 var(--viewport-header-height);
  height:var(--viewport-header-height);
}
.public-shell-locked #app{
  display:flex;
  flex-direction:column;
}
.public-shell-locked .viewport-header{
  flex:0 0 var(--viewport-header-height);
}
.public-shell-locked .mobile-menu{
  position:fixed;
  z-index:300;
  top:var(--viewport-header-height);
  left:0;
  right:0;
  max-height:calc(100dvh - var(--viewport-header-height));
  overflow:auto;
}
.public-shell-locked .onepage-shell{
  position:relative;
  flex:1 1 auto;
  width:100%;
  height:calc(100dvh - var(--viewport-header-height));
  min-height:0;
  overflow:hidden;
  background:
    radial-gradient(circle at 9% 12%,rgba(214,164,72,.07),transparent 24%),
    radial-gradient(circle at 90% 20%,rgba(214,164,72,.05),transparent 22%),
    var(--onepage-paper);
}

/* Header precision */
.public-shell-locked .luxury-header .site-header__inner{height:var(--viewport-header-height)}
.public-shell-locked .luxury-brand .brand-logo{width:152px}
.public-shell-locked .luxury-nav{gap:34px}
.public-shell-locked .luxury-nav>a,
.public-shell-locked .luxury-nav__dropdown>button{font-size:.82rem;font-weight:700}
.public-shell-locked .luxury-order-button{padding:10px 17px}
.public-shell-locked .luxury-mobile-menu .is-active{color:var(--onepage-gold-light)}

/* Shared one-page view engine */
.onepage-home{isolation:isolate}
.onepage-view{
  position:absolute;
  inset:0;
  display:none;
  min-width:0;
  min-height:0;
  overflow:hidden;
  background:linear-gradient(135deg,#fffdf8 0%,#fff9ef 56%,#f9f0e1 100%);
}
.onepage-view.is-active{
  display:grid;
  animation:onepage-enter .42s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes onepage-enter{
  from{opacity:0;transform:translateY(8px) scale(.995)}
  to{opacity:1;transform:none}
}
.onepage-ornament{
  position:absolute;
  z-index:0;
  width:250px;
  height:360px;
  opacity:.16;
  pointer-events:none;
}
.onepage-ornament:before,
.onepage-ornament:after{
  content:"";
  position:absolute;
  border:1px solid var(--onepage-gold);
  border-radius:55% 45% 62% 38%;
}
.onepage-ornament:before{inset:20px 80px 44px 70px;transform:rotate(25deg)}
.onepage-ornament:after{inset:95px 22px 0 112px;transform:rotate(-32deg)}
.onepage-ornament--left{left:-105px;top:85px;transform:rotate(-18deg)}
.onepage-ornament--right{right:-105px;top:75px;transform:scaleX(-1) rotate(-18deg)}
.onepage-eyebrow{
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--onepage-gold);
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.16em;
}
.onepage-eyebrow i{width:30px;height:1px;background:var(--onepage-gold)}
.onepage-emblem{color:var(--onepage-gold);font-size:1.45rem;line-height:1}
.onepage-panel-heading{
  position:relative;
  z-index:2;
  width:min(780px,100%);
  margin:0 auto;
  text-align:center;
}
.onepage-panel-heading small{
  display:block;
  margin:7px 0 3px;
  color:var(--onepage-gold);
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.18em;
}
.onepage-panel-heading h1{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2rem,4.2vw,3.65rem);
  font-weight:500;
  line-height:1.06;
  letter-spacing:-.035em;
  color:var(--onepage-ink);
}
.onepage-panel-heading p{
  max-width:760px;
  margin:10px auto 0;
  color:var(--onepage-muted);
  font-size:.84rem;
  line-height:1.55;
}
.onepage-panel-layout{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  gap:22px;
  height:100%;
  padding:28px 0 30px;
}

/* Beranda — top hero + compact lower information in one viewport */
.onepage-view--home.is-active{
  grid-template-rows:minmax(0,1fr) auto;
}
.onepage-home-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.95fr);
  align-items:center;
  gap:64px;
  min-height:0;
  height:100%;
  padding:25px 0 16px;
}
.onepage-home-copy{min-width:0}
.onepage-home-copy h1{
  max-width:680px;
  margin:14px 0 16px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(3rem,4.25vw,4.8rem);
  font-weight:500;
  line-height:1.02;
  letter-spacing:-.047em;
  color:var(--onepage-ink);
  text-wrap:balance;
}
.onepage-home-copy>p{
  max-width:660px;
  margin:0;
  color:#4f5a70;
  font-size:.93rem;
  line-height:1.65;
}
.onepage-home-actions{display:flex;gap:10px;margin-top:18px}
.onepage-home-actions .button{min-width:158px}
.onepage-home-trust{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}
.onepage-home-trust>span{
  display:grid;
  grid-template-columns:auto 1fr;
  column-gap:8px;
  align-items:center;
  min-width:0;
}
.onepage-home-trust b{
  grid-row:1/3;
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:1px solid var(--onepage-line);
  border-radius:50%;
  color:var(--onepage-gold);
  background:#fff;
}
.onepage-home-trust strong,
.onepage-home-trust small{display:block;min-width:0}
.onepage-home-trust strong{font-size:.64rem;white-space:nowrap}
.onepage-home-trust small{font-size:.52rem;color:#7b8391;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.onepage-home-visual{
  position:relative;
  display:grid;
  place-items:center;
  min-width:0;
  min-height:0;
  height:100%;
}
.onepage-showcase{
  position:relative;
  width:min(100%,520px);
  height:min(43vh,410px);
  min-height:330px;
  border:1px solid rgba(193,137,38,.28);
  border-radius:22px;
  background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(247,233,208,.86));
  box-shadow:var(--onepage-shadow);
}
.onepage-showcase__card{
  position:absolute;
  width:45%;
  height:78%;
  top:10%;
  border:1px solid rgba(177,128,40,.25);
  border-radius:10px;
  box-shadow:0 18px 36px rgba(6,21,47,.09);
}
.onepage-showcase__card:before{
  content:"";
  position:absolute;
  inset:20px;
  border:1px solid rgba(177,128,40,.25);
  border-radius:50% 50% 12px 12px;
}
.onepage-showcase__card--paper{left:5%;background:#fffdf8;transform:rotate(-7deg)}
.onepage-showcase__card--navy{right:4%;background:linear-gradient(150deg,#071932,#102a56);transform:rotate(8deg)}
.onepage-phone{
  position:absolute;
  z-index:4;
  left:50%;
  top:4%;
  width:min(38%,205px);
  height:90%;
  padding:7px;
  border:5px solid #101722;
  border-radius:30px;
  background:#101722;
  box-shadow:0 25px 45px rgba(6,21,47,.28);
  transform:translateX(-50%);
}
.onepage-phone__speaker{
  position:absolute;
  z-index:2;
  left:50%;
  top:4px;
  width:52px;
  height:7px;
  border-radius:999px;
  background:#05080d;
  transform:translateX(-50%);
}
.onepage-phone img{width:100%;height:100%;object-fit:cover;border-radius:20px}
.onepage-phone>b{
  position:absolute;
  left:50%;
  bottom:9%;
  padding:7px 12px;
  border-radius:999px;
  background:linear-gradient(135deg,#9e6714,#dda945);
  color:#fff;
  font-size:.55rem;
  white-space:nowrap;
  transform:translateX(-50%);
}
.onepage-botanical{
  position:absolute;
  z-index:5;
  width:82px;
  height:145px;
  border:2px solid rgba(64,93,50,.34);
  border-radius:50%;
  transform:rotate(36deg);
}
.onepage-botanical:before,
.onepage-botanical:after{
  content:"";
  position:absolute;
  width:26px;
  height:50px;
  border-radius:50%;
  background:rgba(65,104,57,.48);
}
.onepage-botanical:before{left:-12px;top:30px;transform:rotate(-36deg)}
.onepage-botanical:after{right:-12px;bottom:28px;transform:rotate(36deg)}
.onepage-botanical--one{left:-22px;bottom:-4px}
.onepage-botanical--two{right:-18px;top:-9px;transform:scaleX(-1) rotate(36deg)}
.onepage-seal{
  position:absolute;
  z-index:6;
  right:-3px;
  bottom:8%;
  display:grid;
  place-items:center;
  width:100px;
  height:100px;
  border:1px solid var(--onepage-gold);
  border-radius:50%;
  background:rgba(255,253,248,.95);
  text-align:center;
  box-shadow:0 14px 35px rgba(6,21,47,.10);
}
.onepage-seal:before{content:"";position:absolute;inset:8px;border:1px solid rgba(201,145,46,.35);border-radius:50%}
.onepage-seal strong,.onepage-seal span{position:relative;z-index:1;display:block}
.onepage-seal strong{font-family:Georgia,serif;color:var(--onepage-gold);font-size:1.45rem;line-height:1}
.onepage-seal span{font-size:.55rem;color:#4e586b}
.onepage-home-bottom{
  position:relative;
  z-index:4;
  height:clamp(230px,29vh,286px);
  min-height:0;
  padding-bottom:12px;
}
.onepage-category-bar{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  height:76px;
  border:1px solid var(--onepage-line);
  border-radius:16px;
  background:rgba(255,253,248,.97);
  box-shadow:0 10px 26px rgba(6,21,47,.07);
  overflow:hidden;
}
.onepage-category-bar>a{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:10px;
  align-items:center;
  min-width:0;
  padding:10px 16px;
  border-right:1px solid var(--onepage-line);
}
.onepage-category-bar>a:last-child{border-right:0}
.onepage-category-bar>a>span{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:1px solid var(--onepage-line);
  border-radius:50%;
  color:var(--onepage-gold);
  background:#fff;
}
.onepage-category-bar strong,.onepage-category-bar small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.onepage-category-bar strong{font-family:Georgia,serif;font-size:.86rem}
.onepage-category-bar small{font-size:.54rem;color:#7a8392}
.onepage-category-bar b{color:var(--onepage-gold)}
.onepage-home-lower{
  display:grid;
  grid-template-columns:1.35fr .65fr;
  gap:22px;
  height:calc(100% - 76px);
  padding-top:14px;
}
.onepage-template-preview,.onepage-reason-preview{min-width:0;min-height:0}
.onepage-inline-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:7px}
.onepage-inline-title small{display:block;color:var(--onepage-gold);font-size:.52rem;font-weight:900;letter-spacing:.16em}
.onepage-inline-title h2{margin:0;font-family:Georgia,serif;font-size:1.25rem;font-weight:500}
.onepage-inline-title a{color:var(--onepage-gold);font-size:.62rem;font-weight:800}
.onepage-template-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;height:calc(100% - 32px)}
.onepage-template-mini{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--onepage-line);
  border-radius:11px;
  background:#fff;
  box-shadow:0 7px 18px rgba(6,21,47,.06);
}
.onepage-template-mini img{width:100%;height:calc(100% - 23px);object-fit:cover}
.onepage-template-mini > .onepage-template-mini__label{display:block;height:23px;padding:4px 6px;font-size:.58rem;font-weight:800;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.onepage-reason-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;height:calc(100% - 32px)}
.onepage-reason-grid>span{display:grid;place-items:center;align-content:center;gap:5px;border:1px solid var(--onepage-line);border-radius:11px;background:#fff;text-align:center;box-shadow:0 7px 18px rgba(6,21,47,.05)}
.onepage-reason-grid b{color:var(--onepage-gold);font-size:1.2rem}
.onepage-reason-grid strong{font-size:.58rem}

/* Fitur */
.onepage-feature-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:16px;
  min-height:0;
}
.onepage-feature-grid article{
  position:relative;
  display:grid;
  place-items:center;
  align-content:center;
  min-height:0;
  padding:18px;
  border:1px solid var(--onepage-line);
  border-radius:18px;
  background:rgba(255,255,255,.90);
  text-align:center;
  box-shadow:0 12px 30px rgba(6,21,47,.065);
}
.onepage-feature-grid article>span{
  display:grid;
  place-items:center;
  width:62px;
  height:62px;
  margin-bottom:11px;
  border:1px solid var(--onepage-line);
  border-radius:50%;
  background:radial-gradient(circle,#fff,#f6e7c6);
  color:var(--onepage-gold);
  font-size:1.55rem;
}
.onepage-feature-grid h2{margin:0 0 6px;font-family:Georgia,serif;font-size:1.05rem;font-weight:600}
.onepage-feature-grid p{max-width:260px;margin:0;color:var(--onepage-muted);font-size:.68rem;line-height:1.5}
.onepage-feature-grid i{position:absolute;left:50%;bottom:12px;width:40px;height:1px;background:var(--onepage-gold);transform:translateX(-50%)}

/* Cara Pesan */
.onepage-workflow-grid{
  position:relative;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:stretch;
  gap:14px;
  min-height:0;
}
.onepage-workflow-grid:before{
  content:"";
  position:absolute;
  left:7%;
  right:7%;
  top:25%;
  border-top:1px dashed var(--onepage-gold);
}
.onepage-workflow-grid article{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  align-content:center;
  min-width:0;
  padding:18px 14px;
  border:1px solid var(--onepage-line);
  border-radius:18px;
  background:#fff;
  text-align:center;
  box-shadow:0 12px 30px rgba(6,21,47,.06);
}
.onepage-workflow-icon{
  display:grid;
  place-items:center;
  width:64px;
  height:64px;
  margin-bottom:8px;
  border:1px solid var(--onepage-line);
  border-radius:50%;
  background:radial-gradient(circle,#fff,#f6e7c6);
  color:var(--onepage-gold);
  font-size:1.35rem;
}
.onepage-workflow-grid article>b{display:grid;place-items:center;width:25px;height:25px;margin-bottom:8px;border-radius:50%;background:var(--onepage-gold);color:#fff;font-size:.68rem}
.onepage-workflow-grid h2{margin:0 0 7px;font-family:Georgia,serif;font-size:1.02rem}
.onepage-workflow-grid p{margin:0;color:var(--onepage-muted);font-size:.67rem;line-height:1.5}
.onepage-workflow-grid article>i{position:absolute;right:-19px;top:47%;color:var(--onepage-gold);font-size:1.4rem;font-style:normal}

/* Testimoni */
.onepage-panel-layout--testimonials{grid-template-rows:auto minmax(0,1fr) auto}
.onepage-testimonial-shell{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  min-height:0;
}
.onepage-testimonial-shell>button{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:1px solid var(--onepage-line);
  border-radius:50%;
  background:#fff;
  color:var(--onepage-gold);
  font-size:1.5rem;
  cursor:pointer;
  box-shadow:0 8px 22px rgba(6,21,47,.07);
}
.onepage-testimonial-track{
  display:flex;
  gap:18px;
  height:100%;
  min-height:0;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}
.onepage-testimonial-track::-webkit-scrollbar{display:none}
.onepage-testimonial-card{
  position:relative;
  flex:0 0 calc((100% - 36px)/3);
  display:grid;
  place-items:center;
  align-content:center;
  min-width:0;
  min-height:0;
  padding:20px;
  border:1px solid var(--onepage-line);
  border-radius:18px;
  background:#fff;
  text-align:center;
  scroll-snap-align:center;
  box-shadow:0 14px 35px rgba(6,21,47,.07);
}
.onepage-testimonial-card__quote{display:grid;place-items:center;width:52px;height:52px;border:1px solid var(--onepage-line);border-radius:50%;color:var(--onepage-gold);font-family:Georgia,serif;font-size:2.35rem;line-height:1}
.onepage-testimonial-card>p{max-width:300px;margin:16px auto;color:#3f4b61;font-size:.8rem;line-height:1.6}
.onepage-testimonial-card__person{display:flex;align-items:center;gap:10px;margin-top:2px}
.onepage-testimonial-card__person>span{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--onepage-line);border-radius:50%;background:linear-gradient(135deg,var(--onepage-navy),#1f4f86);color:#fff;font-weight:900}
.onepage-testimonial-card__person strong,.onepage-testimonial-card__person small{display:block;text-align:left}
.onepage-testimonial-card__person strong{font-family:Georgia,serif;font-size:.9rem}
.onepage-testimonial-card__person small{font-size:.58rem;color:#7a8392}
.onepage-testimonial-card>em{margin-top:12px;color:var(--onepage-gold);font-style:normal;letter-spacing:.1em}
.onepage-testimonial-dots{display:flex;justify-content:center;gap:8px}
.onepage-testimonial-dots button{width:9px;height:9px;padding:0;border:1px solid var(--onepage-gold);border-radius:50%;background:transparent;cursor:pointer}
.onepage-testimonial-dots button.is-active{background:var(--onepage-gold)}

/* Catalog — title, filter, cards, pagination, and compact steps all in one viewport */
.onepage-catalog{
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  background:var(--onepage-paper);
}
.catalog-onepage-head{
  position:relative;
  z-index:3;
  height:282px;
  overflow:hidden;
  border-bottom:1px solid var(--onepage-line);
  background:linear-gradient(135deg,#fffdf8 0%,#fff9ef 56%,#f8efe0 100%);
}
.catalog-onepage-head__inner{position:relative;z-index:2;height:100%;padding-top:24px}
.catalog-onepage-title{text-align:center}
.catalog-onepage-title .onepage-emblem{display:block}
.catalog-onepage-title h1{margin:2px 0 7px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.4rem,3.6vw,3.9rem);font-weight:500;line-height:1;letter-spacing:-.035em}
.catalog-onepage-title p{max-width:760px;margin:0 auto;color:var(--onepage-muted);font-size:.8rem;line-height:1.5}
.catalog-onepage-toolbar{
  display:grid;
  grid-template-columns:minmax(280px,2fr) minmax(0,4fr);
  gap:12px;
  margin-top:16px;
  padding:8px;
  border:1px solid var(--onepage-line);
  border-radius:14px;
  background:rgba(255,255,255,.9);
  box-shadow:0 10px 25px rgba(6,21,47,.06);
}
.catalog-onepage-search,
.catalog-onepage-filterpanel label{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  height:42px;
  padding:0 12px;
  border:1px solid var(--onepage-line);
  border-radius:10px;
  background:#fff;
}
.catalog-onepage-search input,
.catalog-onepage-filterpanel select{
  width:100%;
  min-width:0;
  border:0;
  outline:0;
  background:transparent;
  color:var(--onepage-ink);
  font-size:.7rem;
}
.catalog-onepage-filterpanel{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.catalog-filter-toggle,.catalog-filter-close{display:none}
.catalog-onepage-chips{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:12px;
  white-space:nowrap;
}
.catalog-onepage-chips button{
  min-width:100px;
  padding:8px 13px;
  border:1px solid var(--onepage-line);
  border-radius:999px;
  background:#fff;
  color:var(--onepage-ink);
  font-size:.64rem;
  cursor:pointer;
}
.catalog-onepage-chips button.is-active{border-color:var(--onepage-gold);background:linear-gradient(135deg,#a76e16,#dda945);color:#fff;box-shadow:0 8px 20px rgba(177,121,24,.22)}
.catalog-onepage-content{min-height:0;background:#fffdf9}
.catalog-onepage-content__inner{
  display:grid;
  grid-template-rows:24px minmax(0,1fr) 38px 90px;
  gap:8px;
  height:100%;
  min-height:0;
  padding:12px 0 10px;
}
.catalog-onepage-status{display:flex;justify-content:space-between;align-items:center;color:#7a8392;font-size:.61rem}
.catalog-onepage-status button{border:0;background:transparent;color:var(--onepage-gold);font-size:.61rem;font-weight:900;cursor:pointer}
.catalog-onepage-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
  min-height:0;
  align-items:stretch;
}
.catalog-onepage-grid .luxury-template-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:0;
  height:100%;
  border-radius:13px;
  box-shadow:0 9px 22px rgba(6,21,47,.07);
}
.catalog-onepage-grid .luxury-template-card .template-card__media{flex:1 1 auto;min-height:0;aspect-ratio:auto}
.catalog-onepage-grid .luxury-template-card .template-card__media img{height:100%;object-fit:cover}
.catalog-onepage-grid .luxury-template-card .template-card__body{flex:0 0 30px;padding:7px 9px 3px}
.catalog-onepage-grid .luxury-template-card .template-card__body h3{font-family:Georgia,serif;font-size:.75rem;line-height:1.15}
.catalog-onepage-grid .luxury-template-card .template-card__actions{flex:0 0 38px;grid-template-columns:1fr 1.1fr;gap:5px;padding:5px 8px 8px}
.catalog-onepage-grid .luxury-template-card .template-card__actions .button{padding:6px 5px;border-radius:8px;font-size:.58rem}
.catalog-onepage-grid .badge{top:7px;right:7px;padding:4px 6px;font-size:.5rem}
.catalog-onepage-grid .favorite{top:6px;left:6px;width:26px;height:26px;font-size:.9rem}
.catalog-onepage-pagination{display:flex;align-items:center;justify-content:center;gap:6px}
.catalog-onepage-pagination[hidden]{visibility:hidden;display:flex}
.catalog-onepage-pagination button,.catalog-onepage-pagination span{display:grid;place-items:center;min-width:30px;height:30px;border:1px solid var(--onepage-line);border-radius:8px;background:#fff;color:var(--onepage-ink);font-size:.66rem}
.catalog-onepage-pagination button{cursor:pointer}
.catalog-onepage-pagination button.is-active{border-color:var(--onepage-gold);background:var(--onepage-gold);color:#fff}
.catalog-onepage-pagination button:disabled{opacity:.35}
.catalog-onepage-steps{
  display:grid;
  grid-template-columns:180px repeat(4,minmax(0,1fr));
  align-items:stretch;
  overflow:hidden;
  border:1px solid var(--onepage-line);
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 22px rgba(6,21,47,.055);
}
.catalog-onepage-steps>strong{display:grid;place-items:center;align-content:center;gap:3px;border-right:1px solid var(--onepage-line);font-family:Georgia,serif;font-size:1.05rem}
.catalog-onepage-steps article{position:relative;display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:7px;min-width:0;padding:9px 10px;border-right:1px solid var(--onepage-line)}
.catalog-onepage-steps article:last-child{border-right:0}
.catalog-onepage-steps article>span{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--onepage-line);border-radius:50%;color:var(--onepage-gold);background:#fffaf0}
.catalog-onepage-steps article>b{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:var(--onepage-gold);color:#fff;font-size:.55rem}
.catalog-onepage-steps h2{margin:0;font-family:Georgia,serif;font-size:.72rem}
.catalog-onepage-steps p{margin:2px 0 0;color:var(--onepage-muted);font-size:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.catalog-onepage-steps article>i{position:absolute;right:-8px;z-index:2;color:var(--onepage-gold);font-style:normal}
.catalog-onepage-empty{display:grid;place-items:center;align-content:center;text-align:center;border:1px dashed var(--onepage-line);border-radius:15px;background:#fff}
.catalog-onepage-empty>span{font-size:2rem;color:var(--onepage-gold)}
.catalog-onepage-empty h2{margin:5px 0;font-family:Georgia,serif}
.catalog-onepage-empty p{margin:0 0 10px;color:var(--onepage-muted);font-size:.72rem}

/* Medium desktop / laptop */
@media(max-width:1499px) and (min-width:1120px){
  .onepage-home-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.86fr);gap:42px}
  .onepage-home-copy h1{font-size:clamp(2.75rem,4.1vw,4rem)}
  .onepage-showcase{height:min(42vh,370px);min-height:300px}
  .onepage-home-bottom{height:250px}
  .catalog-onepage-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}

/* Tablet */
@media(max-width:1119px){
  :root{--viewport-header-height:68px}
  .onepage-home-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.82fr);gap:28px;padding-top:18px}
  .onepage-home-copy h1{font-size:clamp(2.45rem,5.1vw,3.55rem)}
  .onepage-home-trust{grid-template-columns:1fr 1fr}
  .onepage-showcase{height:min(39vh,340px);min-height:275px}
  .onepage-home-bottom{height:228px}
  .onepage-template-row{grid-template-columns:repeat(4,minmax(0,1fr))}
  .onepage-template-mini:nth-child(5){display:none}
  .onepage-feature-grid{gap:12px}
  .onepage-workflow-grid{gap:9px}
  .onepage-workflow-grid article{padding:12px 8px}
  .onepage-workflow-icon{width:52px;height:52px}
  .onepage-testimonial-card{flex-basis:calc((100% - 18px)/2)}
  .catalog-onepage-head{height:258px}
  .catalog-onepage-filterpanel{grid-template-columns:repeat(3,minmax(0,1fr))}
  .catalog-onepage-sort{display:none!important}
  .catalog-onepage-chips{overflow:hidden;justify-content:flex-start}
  .catalog-onepage-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .catalog-onepage-content__inner{grid-template-rows:22px minmax(0,1fr) 36px 82px}
  .catalog-onepage-steps{grid-template-columns:120px repeat(4,minmax(0,1fr))}
  .catalog-onepage-steps article>span{display:none}
}

/* Mobile locked composition */
@media(max-width:899px){
  :root{--viewport-header-height:64px}
  .public-shell-locked .luxury-header .site-header__inner{height:64px}
  .public-shell-locked .luxury-brand .brand-logo{width:116px}
  .public-shell-locked .luxury-brand .brand-module{font-size:.5rem}
  .public-shell-locked .luxury-order-button{display:inline-flex;padding:8px 10px;font-size:.65rem}
  .public-shell-locked .luxury-order-button span{display:none}
  .public-shell-locked .site-header__actions{gap:5px}
  .public-shell-locked .luxury-menu-button{width:38px;min-width:38px;height:38px}

  .onepage-panel-layout{gap:12px;padding:13px 14px 14px}
  .onepage-panel-heading small{margin-top:3px;font-size:.52rem}
  .onepage-panel-heading h1{font-size:clamp(1.65rem,7vw,2.35rem)}
  .onepage-panel-heading p{margin-top:6px;font-size:.68rem;line-height:1.4}

  .onepage-view--home.is-active{grid-template-rows:minmax(0,1fr) 116px}
  .onepage-home-grid{
    grid-template-columns:1fr;
    grid-template-rows:auto minmax(0,1fr);
    gap:7px;
    padding:13px 18px 5px;
    text-align:center;
  }
  .onepage-eyebrow{justify-content:center;font-size:.57rem}
  .onepage-home-copy h1{max-width:520px;margin:7px auto 7px;font-size:clamp(2rem,9.5vw,2.8rem);line-height:1.01}
  .onepage-home-copy>p{max-width:520px;margin:0 auto;font-size:.67rem;line-height:1.45}
  .onepage-home-actions{justify-content:center;margin-top:9px}
  .onepage-home-actions .button{min-width:0;padding:9px 12px;font-size:.68rem}
  .onepage-home-trust{display:none}
  .onepage-home-visual{height:auto}
  .onepage-showcase{width:min(82vw,350px);height:100%;min-height:205px;max-height:290px}
  .onepage-phone{width:min(35%,130px);border-width:4px;border-radius:22px}
  .onepage-phone img{border-radius:14px}
  .onepage-phone>b{padding:5px 8px;font-size:.45rem}
  .onepage-botanical{width:55px;height:95px}
  .onepage-seal{right:-7px;bottom:8px;width:70px;height:70px}
  .onepage-seal strong{font-size:1rem}
  .onepage-seal span{font-size:.42rem}
  .onepage-home-bottom{height:116px;padding:0 12px 9px}
  .onepage-category-bar{grid-template-columns:1fr 1fr;height:107px;border-radius:13px}
  .onepage-category-bar>a{grid-template-columns:auto 1fr;padding:6px 8px;border-right:1px solid var(--onepage-line);border-bottom:1px solid var(--onepage-line)}
  .onepage-category-bar>a:nth-child(2n){border-right:0}
  .onepage-category-bar>a:nth-child(n+3){border-bottom:0}
  .onepage-category-bar>a>b{display:none}
  .onepage-category-bar>a>span{width:30px;height:30px;font-size:.75rem}
  .onepage-category-bar strong{font-size:.68rem}
  .onepage-category-bar small{font-size:.46rem}
  .onepage-home-lower{display:none}

  .onepage-feature-grid{grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,minmax(0,1fr));gap:8px}
  .onepage-feature-grid article{padding:8px 6px;border-radius:13px}
  .onepage-feature-grid article>span{width:39px;height:39px;margin-bottom:5px;font-size:1rem}
  .onepage-feature-grid h2{margin-bottom:3px;font-size:.72rem}
  .onepage-feature-grid p{font-size:.52rem;line-height:1.35}
  .onepage-feature-grid i{bottom:6px;width:25px}

  .onepage-workflow-grid{grid-template-columns:1fr;grid-template-rows:repeat(5,minmax(0,1fr));gap:7px}
  .onepage-workflow-grid:before{left:34px;right:auto;top:7%;bottom:7%;border-top:0;border-left:1px dashed var(--onepage-gold)}
  .onepage-workflow-grid article{grid-template-columns:auto auto 1fr;grid-template-rows:auto auto;justify-items:start;padding:7px 10px;text-align:left;border-radius:13px}
  .onepage-workflow-icon{grid-row:1/3;width:42px;height:42px;margin:0;font-size:.9rem}
  .onepage-workflow-grid article>b{align-self:end;width:20px;height:20px;margin:0;font-size:.55rem}
  .onepage-workflow-grid h2{align-self:end;margin:0;font-size:.76rem}
  .onepage-workflow-grid p{grid-column:2/4;margin:1px 0 0;font-size:.52rem}
  .onepage-workflow-grid article>i{display:none}

  .onepage-panel-layout--testimonials{grid-template-rows:auto minmax(0,1fr) 16px}
  .onepage-testimonial-shell{grid-template-columns:28px minmax(0,1fr) 28px;gap:5px}
  .onepage-testimonial-shell>button{width:28px;height:28px;font-size:1rem}
  .onepage-testimonial-card{flex-basis:100%;padding:14px}
  .onepage-testimonial-card__quote{width:44px;height:44px;font-size:2rem}
  .onepage-testimonial-card>p{margin:11px auto;font-size:.68rem}
  .onepage-testimonial-card__person>span{width:42px;height:42px}

  .catalog-onepage-head{height:185px}
  .catalog-onepage-head__inner{padding:9px 12px 0}
  .catalog-onepage-title h1{font-size:1.75rem}
  .catalog-onepage-title p{font-size:.58rem;line-height:1.35}
  .catalog-onepage-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:8px;padding:6px}
  .catalog-onepage-search{height:36px;padding:0 9px}
  .catalog-filter-toggle{display:flex;align-items:center;gap:5px;height:36px;padding:0 11px;border:1px solid var(--onepage-line);border-radius:9px;background:#fff;color:var(--onepage-ink);font-size:.64rem;font-weight:800}
  .catalog-onepage-filterpanel{
    position:fixed;
    z-index:400;
    inset:64px 0 0;
    display:none;
    grid-template-columns:1fr 1fr;
    align-content:center;
    gap:10px;
    padding:24px;
    background:rgba(6,21,47,.97);
  }
  .catalog-onepage-filterpanel.is-open{display:grid}
  .catalog-onepage-filterpanel label{height:48px}
  .catalog-filter-close{display:block;grid-column:1/-1;height:46px;border:1px solid #e7c271;border-radius:10px;background:linear-gradient(135deg,#9e6714,#dda945);color:#fff;font-weight:900}
  .catalog-onepage-chips{justify-content:flex-start;gap:5px;margin-top:7px;overflow-x:auto;scrollbar-width:none}
  .catalog-onepage-chips::-webkit-scrollbar{display:none}
  .catalog-onepage-chips button{min-width:auto;padding:6px 10px;font-size:.54rem}
  .catalog-onepage-content__inner{grid-template-rows:18px minmax(0,1fr) 34px;gap:6px;padding:7px 14px 10px}
  .catalog-onepage-grid{grid-template-columns:1fr;justify-items:center;gap:0}
  .catalog-onepage-grid .luxury-template-card{width:min(100%,330px);height:100%}
  .catalog-onepage-grid .luxury-template-card .template-card__body{flex-basis:32px}
  .catalog-onepage-grid .luxury-template-card .template-card__body h3{font-size:.85rem}
  .catalog-onepage-grid .luxury-template-card .template-card__actions{flex-basis:42px}
  .catalog-onepage-grid .luxury-template-card .template-card__actions .button{font-size:.64rem}
  .catalog-onepage-pagination button,.catalog-onepage-pagination span{min-width:28px;height:28px}
  .catalog-onepage-steps{display:none}
  .catalog-onepage-status{font-size:.54rem}
}

@media(max-width:420px){
  .onepage-home-copy h1{font-size:1.92rem}
  .onepage-home-copy>p{font-size:.61rem}
  .onepage-showcase{width:min(88vw,330px)}
  .catalog-onepage-title h1{font-size:1.55rem}
}

@media(max-height:760px) and (min-width:900px){
  .onepage-home-grid{padding-top:12px;gap:38px}
  .onepage-home-copy h1{font-size:3.25rem;margin-block:10px}
  .onepage-home-copy>p{font-size:.78rem}
  .onepage-home-actions{margin-top:12px}
  .onepage-home-trust{margin-top:11px}
  .onepage-showcase{height:315px;min-height:290px}
  .onepage-home-bottom{height:218px}
  .onepage-category-bar{height:64px}
  .onepage-home-lower{height:calc(100% - 64px);padding-top:9px}
  .onepage-category-bar>a>span{width:36px;height:36px}
  .onepage-panel-layout{gap:12px;padding-block:14px}
  .onepage-panel-heading h1{font-size:2.5rem}
  .onepage-feature-grid article>span{width:52px;height:52px}
  .catalog-onepage-head{height:238px}
  .catalog-onepage-head__inner{padding-top:10px}
  .catalog-onepage-title h1{font-size:2.8rem}
  .catalog-onepage-content__inner{grid-template-rows:20px minmax(0,1fr) 32px 72px;padding-top:7px}
  .catalog-onepage-steps{grid-template-columns:135px repeat(4,minmax(0,1fr))}
}

@media(prefers-reduced-motion:reduce){
  .onepage-view.is-active{animation:none}
}

/* STEP 13 final fit corrections */
.onepage-home-bottom{height:clamp(245px,33vh,306px)}
.catalog-onepage-empty[hidden],
.catalog-onepage-grid[hidden]{display:none!important}

/* STEP 13 home lower strip simplification */
.onepage-home-bottom{height:clamp(220px,26vh,246px)}
.onepage-home-lower{display:block;height:calc(100% - 76px);padding-top:11px}
.onepage-template-row{height:calc(100% - 32px);grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.onepage-template-mini img{height:calc(100% - 24px)}
.onepage-reason-preview{display:none!important}
@media(max-width:1119px) and (min-width:900px){
  .onepage-home-bottom{height:220px}
  .onepage-template-row{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-height:760px) and (min-width:900px){
  .onepage-home-bottom{height:190px}
  .onepage-home-lower{height:calc(100% - 64px)}
}

/* ========================================================================== 
   NEXORA INVITE — STEP 13R1 / VIEWPORT FIT & CONTENT POLISH
   Version 2.6.1 — 2026-08-05
   - Hero preview rebuilt as responsive HTML, not a cropped landscape image.
   - Featured templates remain fully visible inside the locked homepage.
   - Catalog honors pagination; hidden cards never occupy grid space.
   - Workflow and testimonial cards use a shorter, more elegant composition.
   ========================================================================== */

/* Critical pagination visibility contract. Author display rules must never
   override the native hidden attribute. */
.catalog-onepage-grid .luxury-template-card[hidden],
.catalog-onepage-grid [data-template-card][hidden]{display:none!important}

/* Home proportions: the lower collection receives guaranteed space. */
@media(min-width:900px){
  .onepage-view--home.is-active{
    grid-template-rows:minmax(0,56%) minmax(0,44%);
  }
  .onepage-home-grid{
    gap:48px;
    padding:16px 0 8px;
  }
  .onepage-home-copy h1{
    max-width:650px;
    margin:10px 0 12px;
    font-size:clamp(2.85rem,4vw,4.25rem);
  }
  .onepage-home-copy>p{font-size:.86rem;line-height:1.55}
  .onepage-home-actions{margin-top:14px}
  .onepage-home-trust{margin-top:13px}
  .onepage-home-bottom{
    display:grid;
    grid-template-rows:68px minmax(0,1fr);
    gap:10px;
    height:auto;
    min-height:0;
    padding-bottom:12px;
  }
  .onepage-category-bar{height:68px}
  .onepage-category-bar>a{padding:7px 14px}
  .onepage-category-bar>a>span{width:38px;height:38px}
  .onepage-home-lower{
    display:block;
    height:auto;
    min-height:0;
    padding-top:0;
  }
  .onepage-template-preview{display:grid;grid-template-rows:30px minmax(0,1fr);height:100%}
  .onepage-inline-title{margin:0}
  .onepage-template-row{
    height:auto;
    min-height:0;
    gap:12px;
  }
  .onepage-template-mini{height:100%;min-height:0}
  .onepage-template-mini img{height:calc(100% - 24px);object-position:center}

  /* Compact workflow / testimonial views intentionally leave visual breathing
     room below the cards instead of stretching every card to the viewport. */
  .onepage-view--workflow .onepage-panel-layout{
    grid-template-rows:auto auto;
    align-content:start;
    gap:20px;
    padding-top:24px;
  }
  .onepage-view--workflow .onepage-workflow-grid{
    width:100%;
    height:clamp(270px,38vh,340px);
    min-height:0;
  }
  .onepage-view--workflow .onepage-workflow-grid article{padding:16px 12px}
  .onepage-view--workflow .onepage-workflow-icon{width:55px;height:55px;margin-bottom:8px}

  .onepage-view--testimonials .onepage-panel-layout--testimonials{
    grid-template-rows:auto auto 16px;
    align-content:start;
    gap:18px;
    padding-top:24px;
  }
  .onepage-view--testimonials .onepage-testimonial-shell{
    min-height:0;
    height:clamp(270px,38vh,335px);
  }
  .onepage-view--testimonials .onepage-testimonial-track{height:100%}
  .onepage-view--testimonials .onepage-testimonial-card{
    min-height:0;
    height:100%;
    padding:22px 24px;
  }
  .onepage-view--testimonials .onepage-testimonial-card>p{margin:11px auto;font-size:.75rem}
  .onepage-view--testimonials .onepage-testimonial-card__quote{width:44px;height:44px;font-size:2rem}
}

/* A controlled, legible invitation preview inside the hero phone. */
.onepage-phone{overflow:hidden}
.onepage-phone__screen{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  height:100%;
  overflow:hidden;
  border-radius:20px;
  background:
    radial-gradient(circle at 50% 42%,rgba(47,93,153,.30),transparent 37%),
    linear-gradient(155deg,#06162f 0%,#0a2b5b 58%,#06162f 100%);
  color:#fff8eb;
  text-align:center;
}
.onepage-phone__screen:before{
  content:"";
  position:absolute;
  inset:13% 11%;
  border:1px solid rgba(218,171,78,.36);
  border-radius:46% 46% 16px 16px;
  box-shadow:0 0 0 14px rgba(218,171,78,.025);
}
.onepage-phone__screen small,
.onepage-phone__screen strong,
.onepage-phone__screen time,
.onepage-phone__screen>b{position:relative;z-index:3}
.onepage-phone__screen small{font-size:.48rem;font-weight:800;letter-spacing:.24em;color:#e6bd67}
.onepage-phone__screen strong{
  display:flex;
  flex-direction:column;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(1.25rem,2.25vw,2rem);
  font-weight:500;
  line-height:.95;
}
.onepage-phone__screen strong i{margin:5px 0;color:#d9a338;font-size:.8em;font-style:normal}
.onepage-phone__screen time{padding-top:8px;border-top:1px solid rgba(232,191,103,.55);font-size:.48rem;letter-spacing:.16em}
.onepage-phone__screen>b{
  margin-top:3px;
  padding:7px 11px;
  border-radius:999px;
  background:linear-gradient(135deg,#9e6714,#dda945);
  color:#fff;
  font-size:.5rem;
}
.onepage-phone__floral{
  position:absolute;
  z-index:2;
  width:88px;
  height:88px;
  opacity:.95;
  pointer-events:none;
}
.onepage-phone__floral:before,
.onepage-phone__floral:after{
  content:"";
  position:absolute;
  border-radius:50% 50% 46% 54%;
  background:#f7ead0;
  box-shadow:
    22px 4px 0 #204d8b,
    39px 26px 0 #2c65a6,
    6px 30px 0 #173f7b;
}
.onepage-phone__floral:before{width:26px;height:30px;left:12px;top:14px;transform:rotate(24deg)}
.onepage-phone__floral:after{width:15px;height:15px;left:27px;top:28px;background:#dca949;box-shadow:none}
.onepage-phone__floral--top{left:-12px;top:-8px;transform:rotate(-18deg)}
.onepage-phone__floral--bottom{right:-12px;bottom:-9px;transform:rotate(165deg)}

/* Sample testimonials are intentionally labeled until replaced by verified
   customer feedback. */
.onepage-testimonial-card{position:relative}
.onepage-testimonial-card__sample{
  position:absolute;
  top:12px;
  right:12px;
  padding:4px 7px;
  border:1px solid var(--onepage-line);
  border-radius:999px;
  background:#fff8e8;
  color:#9c6815;
  font-size:.46rem;
  font-weight:900;
  letter-spacing:.12em;
}

/* Catalog: balanced title area, six fully rendered cards and compact order
   strip inside the same locked viewport. */
@media(min-width:1500px){
  .catalog-onepage-head{height:220px}
  .catalog-onepage-head__inner{padding-top:13px}
  .catalog-onepage-title h1{font-size:3.15rem}
  .catalog-onepage-title p{font-size:.72rem}
  .catalog-onepage-toolbar{margin-top:11px;padding:6px}
  .catalog-onepage-search,.catalog-onepage-filterpanel label{height:38px}
  .catalog-onepage-chips{margin-top:8px}
  .catalog-onepage-chips button{padding:7px 12px}
  .catalog-onepage-content__inner{
    grid-template-rows:20px minmax(0,1fr) 34px 72px;
    gap:7px;
    padding:9px 0 9px;
  }
  .catalog-onepage-grid{gap:14px}
  .catalog-onepage-grid .luxury-template-card .template-card__body{flex-basis:34px;padding-top:8px}
  .catalog-onepage-grid .luxury-template-card .template-card__body h3{font-size:.79rem}
  .catalog-onepage-grid .luxury-template-card .template-card__actions{flex-basis:42px}
  .catalog-onepage-steps{grid-template-columns:150px repeat(4,minmax(0,1fr))}
  .catalog-onepage-steps article{padding:7px 9px}
  .catalog-onepage-steps article>span{width:31px;height:31px}
}

@media(max-width:1499px) and (min-width:1120px){
  .onepage-view--home.is-active{grid-template-rows:minmax(0,58%) minmax(0,42%)}
  .onepage-home-bottom{display:grid;grid-template-rows:64px minmax(0,1fr);gap:8px;height:auto}
  .onepage-category-bar{height:64px}
  .onepage-showcase{height:100%;min-height:250px;max-height:330px}
  .catalog-onepage-head{height:205px}
  .catalog-onepage-head__inner{padding-top:9px}
  .catalog-onepage-title h1{font-size:2.75rem}
  .catalog-onepage-toolbar{margin-top:8px;padding:5px}
  .catalog-onepage-search,.catalog-onepage-filterpanel label{height:36px}
  .catalog-onepage-chips{margin-top:6px}
  .catalog-onepage-content__inner{grid-template-rows:18px minmax(0,1fr) 32px 66px;gap:6px;padding:7px 0}
  .catalog-onepage-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
  .catalog-onepage-steps{grid-template-columns:120px repeat(4,minmax(0,1fr))}
  .catalog-onepage-steps article{padding:6px 8px}
}

@media(max-height:760px) and (min-width:900px){
  .onepage-view--home.is-active{grid-template-rows:minmax(0,60%) minmax(0,40%)}
  .onepage-home-grid{padding-top:8px}
  .onepage-home-copy h1{font-size:3rem;margin-block:7px}
  .onepage-showcase{height:100%;min-height:235px;max-height:290px}
  .onepage-home-bottom{grid-template-rows:58px minmax(0,1fr);height:auto}
  .onepage-category-bar{height:58px}
  .onepage-category-bar>a>span{width:32px;height:32px}
  .onepage-template-preview{grid-template-rows:27px minmax(0,1fr)}
  .onepage-view--workflow .onepage-workflow-grid,
  .onepage-view--testimonials .onepage-testimonial-shell{height:300px}
  .catalog-onepage-head{height:185px}
  .catalog-onepage-title h1{font-size:2.45rem}
  .catalog-onepage-title p{font-size:.65rem}
  .catalog-onepage-content__inner{grid-template-rows:18px minmax(0,1fr) 30px 58px}
}

@media(max-width:899px){
  .onepage-phone__screen{border-radius:14px;gap:6px}
  .onepage-phone__screen:before{inset:11% 9%}
  .onepage-phone__screen strong{font-size:1.15rem}
  .onepage-phone__screen small,.onepage-phone__screen time{font-size:.38rem}
  .onepage-phone__screen>b{padding:5px 8px;font-size:.42rem}
  .onepage-phone__floral{width:58px;height:58px}
  .onepage-phone__floral:before{transform:scale(.72) rotate(24deg)}
  .onepage-testimonial-card__sample{top:7px;right:7px;font-size:.4rem}
}

/* STEP 13R1 catalog cover treatment: show the complete landscape artwork over
   a softly blurred color-matched backdrop instead of cropping names and dates. */
.catalog-onepage-grid .template-card__media{isolation:isolate;background:linear-gradient(145deg,var(--card-bg),var(--card-bg2))}
.catalog-onepage-grid .template-card__backdrop{
  position:absolute;
  z-index:0;
  inset:-14px;
  background-image:var(--card-cover);
  background-position:center;
  background-size:cover;
  filter:blur(15px) saturate(.8);
  opacity:.22;
  transform:scale(1.1);
}
.catalog-onepage-grid .template-card__media img{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:contain!important;
  background:rgba(255,253,248,.72);
  backdrop-filter:blur(2px);
}
.catalog-onepage-grid .template-card__fallback{z-index:1}
.catalog-onepage-grid .badge,.catalog-onepage-grid .favorite{z-index:4}

@media(max-width:899px){
  .onepage-view--testimonials .onepage-panel-layout--testimonials{
    grid-template-rows:auto auto 16px;
    align-content:start;
  }
  .onepage-view--testimonials .onepage-testimonial-shell{
    height:clamp(420px,58vh,500px);
    min-height:0;
  }
  .onepage-view--testimonials .onepage-testimonial-track,
  .onepage-view--testimonials .onepage-testimonial-card{height:100%;min-height:0}
}

/* ========================================================================== 
   STEP 13R2 — FINAL PUBLIC LAYOUT CORRECTIONS
   - Beranda aligned to approved luxury composition
   - Catalog: max 12 templates, 2 rows x 6 columns, no bottom workflow strip
   - Testimonials: no visible sample badge
   ========================================================================== */

/* Homepage composition */
@media (min-width: 1280px) {
  .onepage-view--home.is-active{
    grid-template-rows:minmax(0,58%) minmax(0,42%)!important;
  }
  .onepage-home-grid{
    grid-template-columns:minmax(0,.92fr) minmax(500px,1.08fr)!important;
    gap:34px!important;
    padding:18px 0 9px!important;
  }
  .onepage-home-copy h1{
    max-width:620px!important;
    margin:10px 0 12px!important;
    font-size:clamp(3rem,3.55vw,3.85rem)!important;
    line-height:1.01!important;
  }
  .onepage-home-copy>p{
    max-width:620px!important;
    font-size:.82rem!important;
    line-height:1.55!important;
  }
  .onepage-home-actions{margin-top:13px!important}
  .onepage-home-trust{margin-top:12px!important;gap:9px!important}
  .onepage-showcase{
    width:min(100%,570px)!important;
    height:100%!important;
    min-height:300px!important;
    max-height:390px!important;
  }
  .onepage-home-bottom{
    display:grid!important;
    grid-template-rows:60px minmax(0,1fr)!important;
    gap:9px!important;
    height:auto!important;
    padding-bottom:10px!important;
  }
  .onepage-category-bar{height:60px!important}
  .onepage-category-bar>a{padding:6px 13px!important}
  .onepage-category-bar>a>span{width:34px!important;height:34px!important}
  .onepage-home-lower{display:block!important;height:auto!important;padding-top:0!important}
  .onepage-template-preview{display:grid!important;grid-template-rows:28px minmax(0,1fr)!important;height:100%!important}
  .onepage-template-row{height:auto!important;min-height:0!important;gap:11px!important}
  .onepage-template-mini{height:100%!important;min-height:0!important}
  .onepage-template-mini img{height:calc(100% - 22px)!important;object-fit:cover!important;object-position:center!important}
}

/* Approved hero: invitation stationery behind a centered phone. */
.onepage-showcase__card{overflow:hidden!important}
.onepage-showcase__card:before{display:none!important}
.onepage-showcase__card img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.92) contrast(.98);
}
.onepage-showcase__card--paper{
  left:3%!important;
  top:12%!important;
  width:50%!important;
  height:73%!important;
  background:#fffdf8!important;
  transform:rotate(-6deg)!important;
}
.onepage-showcase__card--paper img{opacity:.82}
.onepage-showcase__card--navy{
  right:3%!important;
  top:13%!important;
  width:52%!important;
  height:72%!important;
  transform:rotate(7deg)!important;
}
.onepage-showcase__card--navy img{opacity:.92}
.onepage-phone{left:51%!important;top:4%!important;width:min(36%,194px)!important;height:91%!important}
.onepage-seal{right:-1%!important;bottom:5%!important;width:92px!important;height:92px!important}

/* Catalog has no secondary content below the template grid. */
.catalog-onepage-steps{display:none!important}
.catalog-onepage-content__inner{
  grid-template-rows:20px minmax(0,1fr) 34px!important;
  gap:7px!important;
  padding:9px 0 10px!important;
}
.catalog-onepage-grid{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  gap:11px!important;
  overflow:hidden!important;
}
.catalog-onepage-grid .luxury-template-card{
  min-height:0!important;
  height:100%!important;
}
.catalog-onepage-grid .luxury-template-card .template-card__media{
  flex:1 1 auto!important;
  min-height:0!important;
}
.catalog-onepage-grid .luxury-template-card .template-card__body{
  flex:0 0 29px!important;
  padding:6px 8px 2px!important;
}
.catalog-onepage-grid .luxury-template-card .template-card__body h3{font-size:.69rem!important}
.catalog-onepage-grid .luxury-template-card .template-card__actions{
  flex:0 0 36px!important;
  padding:4px 7px 7px!important;
}
.catalog-onepage-grid .luxury-template-card .template-card__actions .button{
  padding:5px 4px!important;
  font-size:.54rem!important;
}

/* Keep the 2-row rule responsive: columns reduce, rows remain two. */
@media (max-width:1279px) and (min-width:1120px){
  .catalog-onepage-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:1119px) and (min-width:850px){
  .catalog-onepage-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:849px) and (min-width:620px){
  .catalog-onepage-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:619px){
  .catalog-onepage-grid{grid-template-columns:1fr!important;grid-template-rows:repeat(2,minmax(0,1fr))!important}
}

/* Testimonial placeholders are never styled as public endorsements. */
.onepage-testimonial-card__sample{display:none!important}

/* ========================================================================== 
   STEP 13R3 — LUXURY HERO, ICON & PREVIEW POLISH
   - CSS/HTML only: no new raster hero image
   - Hero composition follows the approved ivory/navy/gold stationery concept
   - Homepage icons use a consistent outlined luxury SVG language
   - Featured and catalog previews read like mobile invitation screens
   ========================================================================== */

.luxury-icon{
  display:block;
  width:1em;
  height:1em;
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.onepage-home-actions .luxury-icon{width:17px;height:17px;flex:0 0 auto}
.onepage-home-actions .button{display:inline-flex;align-items:center;justify-content:center;gap:8px}

/* Consistent luxury icon language on the homepage. */
.onepage-home-trust>span{
  column-gap:9px!important;
  padding:4px 2px;
}
.onepage-home-trust b{
  width:34px!important;
  height:34px!important;
  border-color:rgba(190,135,36,.30)!important;
  background:
    radial-gradient(circle at 32% 28%,#fff 0 24%,transparent 25%),
    linear-gradient(145deg,#fffdf7,#f6e8cb)!important;
  color:#b77916!important;
  box-shadow:0 7px 18px rgba(105,71,15,.10),inset 0 0 0 4px rgba(255,255,255,.60);
}
.onepage-home-trust b .luxury-icon{width:16px;height:16px}
.onepage-home-trust strong{font-size:.68rem!important;color:#0b1d3a}
.onepage-home-trust small{font-size:.53rem!important}

.onepage-category-bar>a>span{
  color:#b77916!important;
  border-color:rgba(190,135,36,.28)!important;
  background:linear-gradient(145deg,#fff,#f7ead0)!important;
  box-shadow:0 7px 17px rgba(89,58,10,.09),inset 0 0 0 4px rgba(255,255,255,.64);
}
.onepage-category-bar>a>span .luxury-icon{width:20px;height:20px}
.onepage-category-bar>a:hover>span{transform:translateY(-2px);box-shadow:0 11px 22px rgba(89,58,10,.14)}
.onepage-category-bar>a>span{transition:transform .22s ease,box-shadow .22s ease}

/* Approved hero scene: invitation suite, envelope, flowers and central phone. */
.onepage-showcase{
  overflow:visible!important;
  border-color:rgba(189,133,35,.30)!important;
  background:
    radial-gradient(circle at 22% 18%,rgba(255,255,255,.96),transparent 32%),
    radial-gradient(circle at 78% 75%,rgba(231,206,164,.30),transparent 36%),
    linear-gradient(145deg,#fffdf8 0%,#fbf3e5 64%,#f5e4c8 100%)!important;
  box-shadow:0 25px 65px rgba(13,29,57,.14),inset 0 0 0 7px rgba(255,255,255,.34)!important;
}
.onepage-showcase:before{
  content:"";
  position:absolute;
  inset:12px;
  border:1px solid rgba(184,128,30,.16);
  border-radius:17px;
  pointer-events:none;
}
.onepage-showcase__line-art{
  position:absolute;
  z-index:0;
  width:180px;
  height:180px;
  border:1px solid rgba(187,132,34,.23);
  border-radius:50%;
  pointer-events:none;
}
.onepage-showcase__line-art:before,
.onepage-showcase__line-art:after{
  content:"";
  position:absolute;
  border:1px solid rgba(187,132,34,.18);
  border-radius:50%;
}
.onepage-showcase__line-art:before{inset:15px}
.onepage-showcase__line-art:after{inset:31px}
.onepage-showcase__line-art--left{left:-55px;bottom:-65px}
.onepage-showcase__line-art--right{right:-48px;top:-62px}
.onepage-showcase__envelope{
  position:absolute;
  z-index:1;
  right:5%;
  top:18%;
  width:47%;
  height:63%;
  overflow:hidden;
  border:1px solid rgba(196,144,52,.34);
  border-radius:7px;
  background:linear-gradient(145deg,#fffdf8,#efe0c5);
  box-shadow:0 17px 40px rgba(13,29,57,.11);
  transform:rotate(8deg);
}
.onepage-showcase__envelope:before,
.onepage-showcase__envelope:after{
  content:"";
  position:absolute;
  left:50%;
  width:82%;
  height:74%;
  border:1px solid rgba(178,122,28,.30);
  background:rgba(255,253,248,.86);
  transform-origin:center;
}
.onepage-showcase__envelope:before{top:-43%;transform:translateX(-50%) rotate(45deg)}
.onepage-showcase__envelope:after{bottom:-55%;transform:translateX(-50%) rotate(45deg)}
.onepage-showcase__envelope>span{
  position:absolute;
  z-index:2;
  left:50%;
  top:50%;
  width:44px;
  height:44px;
  border:1px solid rgba(180,124,31,.38);
  border-radius:50%;
  background:#0c2347;
  box-shadow:0 0 0 5px rgba(255,255,255,.65),0 6px 16px rgba(12,35,71,.18);
  transform:translate(-50%,-50%);
}
.onepage-showcase__envelope>span:before{
  content:"N";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#e3b558;
  font-family:Georgia,serif;
  font-size:1.15rem;
}
.onepage-showcase__card{
  box-shadow:0 20px 45px rgba(13,29,57,.14)!important;
  border-radius:8px!important;
}
.onepage-showcase__card--paper{
  z-index:2!important;
  left:7%!important;
  top:15%!important;
  width:45%!important;
  height:70%!important;
  transform:rotate(-7deg)!important;
}
.onepage-showcase__card--navy{
  z-index:2!important;
  right:6%!important;
  top:13%!important;
  width:45%!important;
  height:70%!important;
  transform:rotate(7deg)!important;
}
.onepage-showcase__card img{
  object-position:center!important;
  filter:saturate(.92) contrast(1.02)!important;
}
.onepage-showcase__flower{
  position:absolute;
  z-index:5;
  width:70px;
  height:70px;
  pointer-events:none;
}
.onepage-showcase__flower i{
  position:absolute;
  left:25px;
  top:4px;
  width:23px;
  height:35px;
  border-radius:55% 55% 48% 48%;
  background:linear-gradient(180deg,#fffefb,#efe1c6);
  box-shadow:0 4px 10px rgba(61,44,15,.08);
  transform-origin:50% 31px;
}
.onepage-showcase__flower i:nth-child(2){transform:rotate(72deg)}
.onepage-showcase__flower i:nth-child(3){transform:rotate(144deg)}
.onepage-showcase__flower i:nth-child(4){transform:rotate(216deg)}
.onepage-showcase__flower i:nth-child(5){transform:rotate(288deg)}
.onepage-showcase__flower b{
  position:absolute;
  left:27px;
  top:27px;
  width:20px;
  height:20px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#f7cf7c,#c68b28 72%);
  box-shadow:0 0 0 4px rgba(255,255,255,.54);
}
.onepage-showcase__flower--left{left:3%;top:25%;transform:scale(.78) rotate(-16deg)}
.onepage-showcase__flower--right{right:4%;bottom:9%;transform:scale(.68) rotate(19deg)}
.onepage-showcase__leaf{
  position:absolute;
  z-index:4;
  width:118px;
  height:72px;
  border-bottom:2px solid rgba(151,113,48,.78);
  transform:rotate(-23deg);
  pointer-events:none;
}
.onepage-showcase__leaf i{
  position:absolute;
  bottom:-4px;
  width:31px;
  height:15px;
  border-radius:100% 0 100% 0;
  background:linear-gradient(145deg,#5d784b,#9aa47a);
  opacity:.90;
  transform:rotate(-25deg);
}
.onepage-showcase__leaf i:nth-child(1){left:10px}
.onepage-showcase__leaf i:nth-child(2){left:48px;transform:scaleX(-1) rotate(-25deg)}
.onepage-showcase__leaf i:nth-child(3){left:82px}
.onepage-showcase__leaf--left{left:-23px;bottom:8%}
.onepage-showcase__leaf--right{right:-22px;top:9%;transform:scaleX(-1) rotate(-23deg)}
.onepage-phone{
  z-index:7!important;
  left:52%!important;
  top:3%!important;
  width:min(34%,190px)!important;
  height:94%!important;
  padding:7px!important;
  border-width:6px!important;
  border-color:#0b1220!important;
  border-radius:31px!important;
  background:#0b1220!important;
  box-shadow:0 27px 54px rgba(7,20,43,.32)!important;
}
.onepage-phone:after{
  content:"";
  position:absolute;
  inset:7px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:21px;
  pointer-events:none;
}
.onepage-phone__screen{
  border-radius:21px!important;
  background:
    radial-gradient(circle at 50% 35%,rgba(39,92,155,.62),transparent 38%),
    linear-gradient(165deg,#06152d 0%,#0d2b59 55%,#08172e 100%)!important;
}
.onepage-phone__screen:before{border-color:rgba(225,180,88,.36)!important}
.onepage-phone__monogram{
  position:relative;
  z-index:3;
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  margin-bottom:2px;
  border:1px solid rgba(228,183,91,.42);
  border-radius:50%;
  color:#e2b45a;
  font-family:Georgia,serif;
  font-size:.76rem;
}
.onepage-phone__screen strong{font-size:clamp(1.3rem,2.1vw,2.05rem)!important;line-height:.96!important}
.onepage-phone__screen>b{
  box-shadow:0 7px 17px rgba(166,105,15,.27);
  background:linear-gradient(135deg,#b57613,#e4b65d)!important;
}
.onepage-seal{
  z-index:9!important;
  right:-2%!important;
  bottom:4%!important;
  background:rgba(255,253,248,.97)!important;
  box-shadow:0 15px 34px rgba(10,27,57,.14)!important;
}

/* Category bar is visually raised, but its layout space remains reserved. */
@media(min-width:900px){
  .onepage-category-bar{transform:translateY(-9px)}
  .onepage-home-lower{padding-top:0!important}
}

/* Featured templates become compact mobile-screen previews. */
.onepage-template-row{align-items:stretch!important}
.onepage-template-mini{
  display:grid!important;
  grid-template-rows:minmax(0,1fr) 22px!important;
  gap:0!important;
  min-height:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.onepage-template-mini__device{
  position:relative;
  display:block;
  width:min(100%,130px);
  height:100%;
  min-height:0;
  margin:0 auto;
  overflow:hidden;
  border:4px solid #0c1729;
  border-radius:15px;
  background:#0c1729;
  box-shadow:0 10px 24px rgba(10,25,52,.18);
  transform:translateZ(0);
}
.onepage-template-mini__device:before{
  content:"";
  position:absolute;
  z-index:5;
  left:50%;
  top:3px;
  width:34px;
  height:4px;
  border-radius:999px;
  background:#050a12;
  transform:translateX(-50%);
}
.onepage-template-mini__backdrop{
  position:absolute;
  inset:-12px;
  background-image:var(--mini-cover);
  background-position:center;
  background-size:cover;
  filter:blur(13px) saturate(.85);
  opacity:.34;
  transform:scale(1.13);
}
.onepage-template-mini img{
  position:relative;
  z-index:2;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:10px!important;
  background:#f8f2e7;
}
.onepage-template-mini__shine{
  position:absolute;
  z-index:4;
  inset:0;
  background:linear-gradient(118deg,rgba(255,255,255,.20),transparent 24%,transparent 76%,rgba(255,255,255,.08));
  pointer-events:none;
}
.onepage-template-mini__label{
  display:block;
  height:22px;
  padding:5px 5px 0;
  overflow:hidden;
  color:#10203c;
  font-size:.55rem;
  font-weight:800;
  line-height:1.05;
  text-align:center;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.onepage-template-mini:hover .onepage-template-mini__device{transform:translateY(-4px);box-shadow:0 15px 29px rgba(10,25,52,.24)}
.onepage-template-mini__device{transition:transform .22s ease,box-shadow .22s ease}

/* Catalog: mobile-screen presentation within the existing 2x6 viewport grid. */
.catalog-onepage-grid .template-card__media{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:5px!important;
  overflow:hidden!important;
  background:linear-gradient(150deg,var(--card-bg),var(--card-bg2))!important;
}
.catalog-onepage-grid .template-card__backdrop{
  inset:-10px!important;
  filter:blur(14px) saturate(.85)!important;
  opacity:.38!important;
}
.catalog-onepage-grid .template-card__media img{
  position:relative!important;
  z-index:2!important;
  width:70%!important;
  height:100%!important;
  margin:0 auto!important;
  object-fit:cover!important;
  object-position:center!important;
  border:4px solid #0c1729!important;
  border-radius:13px!important;
  background:#f7f0e4!important;
  box-shadow:0 8px 17px rgba(7,20,42,.21)!important;
  backdrop-filter:none!important;
}
.catalog-onepage-grid .template-card__media:after{
  content:"";
  position:absolute;
  z-index:3;
  left:50%;
  top:8px;
  width:28px;
  height:3px;
  border-radius:999px;
  background:#050a12;
  transform:translateX(-50%);
  pointer-events:none;
}
.catalog-onepage-grid .badge{top:7px!important;right:7px!important}
.catalog-onepage-grid .favorite{top:7px!important;left:7px!important}

@media(max-width:1499px) and (min-width:1120px){
  .onepage-phone{width:min(32%,168px)!important}
  .onepage-showcase__flower--left{transform:scale(.65) rotate(-16deg)}
  .onepage-showcase__flower--right{transform:scale(.58) rotate(19deg)}
  .catalog-onepage-grid .template-card__media img{width:64%!important}
}

@media(max-width:899px){
  .onepage-showcase__envelope{right:4%;width:49%}
  .onepage-showcase__flower--left{left:-4%;transform:scale(.55) rotate(-16deg)}
  .onepage-showcase__flower--right{right:-3%;transform:scale(.48) rotate(19deg)}
  .onepage-showcase__leaf{display:none}
  .onepage-phone{width:min(34%,126px)!important;height:91%!important;border-width:4px!important;border-radius:23px!important}
  .onepage-phone__monogram{width:18px;height:18px;font-size:.58rem}
  .onepage-template-mini__device{width:min(100%,110px);border-width:3px;border-radius:13px}
  .catalog-onepage-grid .template-card__media img{width:min(72%,120px)!important;border-width:3px!important;border-radius:11px!important}
}

/* ========================================================================== 
   STEP 13R4 — FEATURED TEMPLATE PARITY & CTA ICON CORRECTION
   Version 2.6.4 — 2026-08-06
   - Lihat Template uses a clear four-panel template icon.
   - Homepage featured previews use the same blurred backdrop + full mobile
     invitation frame language as the catalog cards.
   - Fixes the collapsed featured preview height in the locked viewport.
   ========================================================================== */

/* The second row of the homepage must own a real height. Previous percentage
   heights were resolving against an auto-sized parent and collapsed the phone
   previews into thin horizontal bars. */
@media (min-width:900px){
  .onepage-home-lower{
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    padding-top:0!important;
  }
  .onepage-template-preview{
    display:grid!important;
    grid-template-rows:30px minmax(0,1fr)!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
  }
  .onepage-template-row{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    align-items:stretch!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    gap:11px!important;
  }
}

.onepage-template-mini{
  display:grid!important;
  grid-template-rows:minmax(0,1fr) 24px!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* Same visual system as the catalog template media. */
.onepage-template-mini__media{
  position:relative;
  display:flex!important;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:0;
  height:100%;
  padding:6px;
  overflow:hidden;
  border:1px solid var(--onepage-line);
  border-radius:12px;
  background:linear-gradient(150deg,var(--mini-bg),var(--mini-bg2));
  box-shadow:0 8px 19px rgba(7,20,42,.10);
}
.onepage-template-mini__backdrop{
  position:absolute!important;
  inset:-11px!important;
  background-image:var(--mini-cover)!important;
  background-position:center!important;
  background-size:cover!important;
  filter:blur(14px) saturate(.85)!important;
  opacity:.38!important;
  transform:scale(1.12)!important;
}
.onepage-template-mini__device{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  width:auto!important;
  max-width:74%!important;
  height:100%!important;
  aspect-ratio:9/16!important;
  min-height:0!important;
  margin:0 auto!important;
  overflow:hidden!important;
  border:4px solid #0c1729!important;
  border-radius:13px!important;
  background:#f7f0e4!important;
  box-shadow:0 8px 17px rgba(7,20,42,.21)!important;
  transition:transform .22s ease,box-shadow .22s ease!important;
}
.onepage-template-mini__device img{
  position:absolute!important;
  z-index:1!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  border:0!important;
  border-radius:9px!important;
  background:#f7f0e4!important;
}
.onepage-template-mini__notch{
  position:absolute;
  z-index:4;
  left:50%;
  top:3px;
  width:30px;
  height:3px;
  border-radius:999px;
  background:#050a12;
  transform:translateX(-50%);
  pointer-events:none;
}
.onepage-template-mini__shine{
  position:absolute!important;
  z-index:3!important;
  inset:0!important;
  display:block!important;
  height:auto!important;
  padding:0!important;
  background:linear-gradient(118deg,rgba(255,255,255,.18),transparent 24%,transparent 76%,rgba(255,255,255,.08))!important;
  pointer-events:none!important;
}
.onepage-template-mini__label{
  display:block!important;
  height:24px!important;
  padding:6px 5px 0!important;
  overflow:hidden!important;
  color:#10203c!important;
  font-size:.56rem!important;
  font-weight:800!important;
  line-height:1.05!important;
  text-align:center!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.onepage-template-mini:hover .onepage-template-mini__device{
  transform:translateY(-3px)!important;
  box-shadow:0 13px 25px rgba(10,25,52,.25)!important;
}

/* Keep featured phone previews readable on common laptop heights. */
@media (min-width:900px) and (max-height:820px){
  .onepage-template-preview{grid-template-rows:27px minmax(0,1fr)!important}
  .onepage-template-mini{grid-template-rows:minmax(0,1fr) 21px!important}
  .onepage-template-mini__label{height:21px!important;padding-top:4px!important;font-size:.52rem!important}
  .onepage-template-mini__media{padding:4px!important}
  .onepage-template-mini__device{border-width:3px!important;border-radius:11px!important}
}

@media (max-width:899px){
  .onepage-template-mini__device{
    max-width:min(72%,116px)!important;
    border-width:3px!important;
    border-radius:11px!important;
  }
  .onepage-template-mini__media{padding:4px!important}
}


/* ==========================================================================
   STEP 13R5 — FEATURED TEMPLATE HEIGHT HOTFIX
   Version 2.6.5 — 2026-08-06
   Root cause: the legacy `.onepage-template-mini span` selector applied a
   fixed 23px height to every nested span, including the media wrapper.
   This forced featured previews into thin horizontal bars.
   ========================================================================== */
.onepage-template-mini > .onepage-template-mini__media{
  display:flex!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  padding:6px!important;
}
.onepage-template-mini > .onepage-template-mini__label{
  display:block!important;
  height:24px!important;
  padding:6px 5px 0!important;
}
.onepage-template-mini__media > .onepage-template-mini__device{
  height:100%!important;
  min-height:0!important;
}

/* ========================================================================== 
   STEP 13R6 — MOBILE DENSITY & TESTIMONIAL PAIR PAGING
   - Mobile catalog: 9 templates per page, arranged 3 columns × 3 rows
   - Mobile testimonials: 2 cards visible in one row; arrows move by pair
   - Scrollbars remain hidden while touch/trackpad interaction stays available
   ========================================================================== */

@media (max-width:619px){
  /* Keep the catalog controls compact so the 3×3 gallery remains inside the
     locked viewport without introducing document scrolling. */
  .catalog-onepage-head{height:176px!important}
  .catalog-onepage-head__inner{padding:7px 10px 0!important}
  .catalog-onepage-title .onepage-emblem{font-size:1rem!important}
  .catalog-onepage-title h1{font-size:1.42rem!important;line-height:1.02!important;margin:0 0 4px!important}
  .catalog-onepage-title p{max-width:330px!important;font-size:.49rem!important;line-height:1.3!important}
  .catalog-onepage-toolbar{margin-top:6px!important;padding:5px!important;gap:5px!important}
  .catalog-onepage-search,.catalog-filter-toggle{height:34px!important}
  .catalog-onepage-search input{font-size:.62rem!important}
  .catalog-filter-toggle{padding:0 9px!important;font-size:.58rem!important}
  .catalog-onepage-chips{margin-top:5px!important;gap:4px!important}
  .catalog-onepage-chips button{padding:5px 8px!important;font-size:.48rem!important}

  .catalog-onepage-content__inner{
    grid-template-rows:16px minmax(0,1fr) 30px!important;
    gap:5px!important;
    padding:5px 8px 7px!important;
  }
  .catalog-onepage-status{font-size:.48rem!important;padding-inline:2px}
  .catalog-onepage-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:repeat(3,minmax(0,1fr))!important;
    gap:5px!important;
    align-items:stretch!important;
    justify-items:stretch!important;
    overflow:hidden!important;
  }
  .catalog-onepage-grid .luxury-template-card{
    width:auto!important;
    min-width:0!important;
    height:100%!important;
    border-radius:9px!important;
    box-shadow:0 5px 12px rgba(6,21,47,.08)!important;
  }
  .catalog-onepage-grid .luxury-template-card .template-card__media{
    flex:1 1 auto!important;
    min-height:0!important;
    padding:3px!important;
  }
  .catalog-onepage-grid .template-card__media img{
    width:68%!important;
    height:100%!important;
    border-width:2px!important;
    border-radius:7px!important;
    box-shadow:0 4px 9px rgba(7,20,42,.18)!important;
  }
  .catalog-onepage-grid .template-card__media:after{
    top:5px!important;
    width:16px!important;
    height:2px!important;
  }
  .catalog-onepage-grid .badge{
    top:4px!important;
    right:4px!important;
    padding:2px 4px!important;
    font-size:.31rem!important;
  }
  .catalog-onepage-grid .favorite{
    top:4px!important;
    left:4px!important;
    width:17px!important;
    height:17px!important;
    font-size:.56rem!important;
  }
  .catalog-onepage-grid .luxury-template-card .template-card__body{
    flex:0 0 18px!important;
    min-height:18px!important;
    padding:3px 3px 1px!important;
  }
  .catalog-onepage-grid .luxury-template-card .template-card__body h3{
    overflow:hidden!important;
    font-size:.45rem!important;
    line-height:1!important;
    text-align:center!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .catalog-onepage-grid .luxury-template-card .template-card__actions{
    flex:0 0 23px!important;
    grid-template-columns:1fr 1fr!important;
    gap:3px!important;
    padding:2px 3px 3px!important;
  }
  .catalog-onepage-grid .luxury-template-card .template-card__actions .button{
    min-width:0!important;
    padding:2px!important;
    border-radius:5px!important;
    font-size:0!important;
    line-height:1!important;
  }
  .catalog-onepage-grid .luxury-template-card .template-card__actions .button span{
    font-size:.48rem!important;
  }
  .catalog-onepage-pagination{gap:4px!important}
  .catalog-onepage-pagination button,.catalog-onepage-pagination span{
    min-width:25px!important;
    height:25px!important;
    border-radius:7px!important;
    font-size:.55rem!important;
  }

  /* Two testimonials share the mobile row. The track still scrolls horizontally
     and the controller advances by two cards for additional testimonials. */
  .onepage-view--testimonials .onepage-panel-layout--testimonials{
    grid-template-rows:auto minmax(0,1fr) 14px!important;
    gap:8px!important;
    padding:11px 8px 10px!important;
  }
  .onepage-view--testimonials .onepage-panel-heading h1{font-size:1.8rem!important}
  .onepage-view--testimonials .onepage-panel-heading p{font-size:.58rem!important;margin-top:4px!important}
  .onepage-view--testimonials .onepage-testimonial-shell{
    grid-template-columns:24px minmax(0,1fr) 24px!important;
    gap:4px!important;
    height:auto!important;
    min-height:0!important;
  }
  .onepage-view--testimonials .onepage-testimonial-shell>button{
    width:24px!important;
    height:24px!important;
    font-size:.9rem!important;
  }
  .onepage-view--testimonials .onepage-testimonial-track{
    gap:7px!important;
    height:100%!important;
    min-height:0!important;
    scroll-snap-type:x mandatory!important;
    scrollbar-width:none!important;
  }
  .onepage-view--testimonials .onepage-testimonial-track::-webkit-scrollbar{display:none!important}
  .onepage-view--testimonials .onepage-testimonial-card{
    flex:0 0 calc((100% - 7px)/2)!important;
    width:calc((100% - 7px)/2)!important;
    height:100%!important;
    min-height:0!important;
    padding:10px 6px!important;
    border-radius:13px!important;
    scroll-snap-align:start!important;
  }
  .onepage-view--testimonials .onepage-testimonial-card__quote{
    width:34px!important;
    height:34px!important;
    font-size:1.55rem!important;
  }
  .onepage-view--testimonials .onepage-testimonial-card>p{
    display:-webkit-box!important;
    max-width:none!important;
    margin:8px 0!important;
    overflow:hidden!important;
    font-size:.53rem!important;
    line-height:1.4!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:6!important;
  }
  .onepage-view--testimonials .onepage-testimonial-card__person{
    justify-content:center!important;
    gap:5px!important;
  }
  .onepage-view--testimonials .onepage-testimonial-card__person>span{
    width:31px!important;
    height:31px!important;
    font-size:.62rem!important;
  }
  .onepage-view--testimonials .onepage-testimonial-card__person strong{
    font-size:.58rem!important;
    line-height:1.1!important;
  }
  .onepage-view--testimonials .onepage-testimonial-card__person small{
    max-width:82px!important;
    overflow:hidden!important;
    font-size:.43rem!important;
    line-height:1.15!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .onepage-view--testimonials .onepage-testimonial-card>em{
    margin-top:7px!important;
    font-size:.58rem!important;
    letter-spacing:.04em!important;
  }
  .onepage-view--testimonials .onepage-testimonial-dots{gap:6px!important}
  .onepage-view--testimonials .onepage-testimonial-dots button{width:7px!important;height:7px!important}
}


/* ========================================================================== 
   STEP 13R7 — MOBILE IMMERSIVE PREVIEW & COMPACT CONTENT POLISH
   Version 2.6.7 — 2026-08-06
   - Catalog Preview on mobile opens the real public invitation route directly.
   - Preview/Pilih labels remain readable in the 3 × 3 mobile grid.
   - Two testimonial cards stay visible while using a shorter, balanced height.
   - Desktop preview workspace and desktop catalog remain unchanged.
   ========================================================================== */

@media (max-width:699px){
  /* Restore explicit action labels; the prior density rule reduced the button
     font to zero and left only the decorative icons visible. */
  .catalog-onepage-grid .luxury-template-card .template-card__actions{
    flex-basis:27px!important;
    min-height:27px!important;
    gap:3px!important;
    padding:2px 3px 3px!important;
  }
  .catalog-onepage-grid .luxury-template-card .template-card__actions .button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:0!important;
    overflow:hidden!important;
    padding:2px 1px!important;
    border-radius:5px!important;
    font-size:.42rem!important;
    font-weight:800!important;
    line-height:1!important;
    letter-spacing:-.015em!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
  }
  .catalog-onepage-grid .luxury-template-card .template-card__actions .button span{
    display:none!important;
  }

  /* The testimonial viewport no longer stretches to all remaining screen
     height. Two cards remain side-by-side with their content centered. */
  .onepage-view--testimonials .onepage-panel-layout--testimonials{
    grid-template-rows:auto auto 14px!important;
    align-content:start!important;
    gap:9px!important;
    padding:10px 8px 9px!important;
  }
  .onepage-view--testimonials .onepage-testimonial-shell{
    width:100%!important;
    height:clamp(250px,34vh,310px)!important;
    min-height:250px!important;
    max-height:310px!important;
    align-self:start!important;
  }
  .onepage-view--testimonials .onepage-testimonial-track{
    height:100%!important;
  }
  .onepage-view--testimonials .onepage-testimonial-card{
    height:100%!important;
    min-height:0!important;
    padding:9px 6px!important;
  }
  .onepage-view--testimonials .onepage-testimonial-card__quote{
    width:31px!important;
    height:31px!important;
    font-size:1.4rem!important;
  }
  .onepage-view--testimonials .onepage-testimonial-card>p{
    margin:7px 0!important;
    font-size:.52rem!important;
    line-height:1.35!important;
    -webkit-line-clamp:5!important;
  }
  .onepage-view--testimonials .onepage-testimonial-card__person>span{
    width:29px!important;
    height:29px!important;
  }
  .onepage-view--testimonials .onepage-testimonial-card__person strong{
    font-size:.55rem!important;
  }
  .onepage-view--testimonials .onepage-testimonial-card__person small{
    font-size:.4rem!important;
  }
  .onepage-view--testimonials .onepage-testimonial-card>em{
    margin-top:5px!important;
    font-size:.54rem!important;
  }
}
