:root{--brand-primary: #7B1E2B;--brand-primary-light: #A33B4B;--brand-primary-dark: #54131D;--brand-primary-container: #FFDADB;--on-primary: #FFFFFF;--brand-gold: #B08D46;--brand-gold-light: #D6BD7A;--brand-gold-dark: #765A1B;--brand-gold-container: #F7E5B5;--on-gold: #261900;--surface-background: #FCF9F4;--surface-primary: #FFFFFF;--surface-secondary: #F7F1E7;--surface-tertiary: #F0E6D8;--surface-disabled: #E9E4DE;--text-primary: #263746;--text-secondary: #6B625B;--text-tertiary: #82766A;--text-disabled: #AAA29A;--text-on-primary: #FFFFFF;--text-on-gold: #261900;--border-default: #E6DCCB;--border-strong: #C9BDAF;--border-control: #857362;--divider: #E9E1D7;--focus: #7B1E2B;--status-success: #2E7D32;--status-success-strong: #1B5E20;--status-success-container: #C8E6C9;--status-warning: #8A5700;--status-warning-container: #FFE0A6;--status-error: #BA1A1A;--status-error-container: #FFDAD6;--status-info: #00639B;--status-info-container: #D1E4FF;--scrim-primary: rgba(123, 30, 43, .88);--scrim-primary-deep: rgba(84, 19, 29, .94);--scrim-primary-deep-faint: rgba(84, 19, 29, .07);--scrim-gold-70: rgba(176, 141, 70, .7);--scrim-gold-50: rgba(176, 141, 70, .5);--scrim-gold-30: rgba(176, 141, 70, .3);--scrim-gold-28: rgba(176, 141, 70, .28);--scrim-gold-26: rgba(176, 141, 70, .26);--scrim-gold-24: rgba(176, 141, 70, .24);--scrim-gold-16: rgba(176, 141, 70, .16);--scrim-gold-05: rgba(176, 141, 70, .05);--focus-ring-glow: rgba(123, 30, 43, .16);--focus-ring-glow-soft: rgba(123, 30, 43, .14);--focus-ring-tint: rgba(123, 30, 43, .08);--brand-primary-deep: var(--brand-primary-dark);--brand-teal: var(--brand-primary);--brand-saffron: var(--brand-primary);--brand-saffron-hover: var(--brand-primary-light);--brand-burgundy: var(--brand-primary);--heritage-champagne: var(--brand-gold-container);--gold-light: var(--brand-gold-light);--gold: var(--brand-gold);--cream: var(--surface-background);--cream-deep: var(--surface-secondary);--ink: var(--text-primary);--ink-soft: var(--text-secondary);--muted: var(--text-secondary);--muted-on-dark: rgba(252, 249, 244, .78);--divider-on-dark: rgba(252, 249, 244, .55);--line: var(--border-default);--danger: var(--status-error);--positive: var(--status-success);--positive-strong: var(--status-success-strong);--warning: var(--status-warning);--info: var(--status-info);--gold-glow: rgba(176, 141, 70, .38);--parchment-texture: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch' result='t'/%3E%3CfeColorMatrix in='t' type='matrix' values='0 0 0 0 0.42 0 0 0 0 0.33 0 0 0 0 0.19 0 0 0 0.05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--stained-glass-motif: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cg fill='none' stroke='%2354131D' stroke-width='1' stroke-opacity='0.35'%3E%3Cpath d='M70 0 L140 70 L70 140 L0 70 Z'/%3E%3Cpath d='M70 0 L70 140 M0 70 L140 70'/%3E%3C/g%3E%3Cpath d='M70 0 L140 70 L70 70 Z' fill='%23B08D46' fill-opacity='0.14'/%3E%3Cpath d='M140 70 L70 140 L70 70 Z' fill='%237B1E2B' fill-opacity='0.12'/%3E%3Cpath d='M70 140 L0 70 L70 70 Z' fill='%23B08D46' fill-opacity='0.1'/%3E%3Cpath d='M0 70 L70 0 L70 70 Z' fill='%237B1E2B' fill-opacity='0.1'/%3E%3C/svg%3E")}:root{--ease: cubic-bezier(.2, .7, .3, 1);--duration-fast: .15s;--ease-slow: cubic-bezier(.4, 0, .2, 1);--duration-slow: .4s}:root{--focus-ring: var(--brand-teal);--focus-ring-on-dark: var(--cream);--radius-sm: 8px;--radius-md: 12px;--radius-card: 14px;--radius-lg: 16px;--radius-xl: 22px;--radius-pill: 99px}:root{--shadow-sm: 0 1px 2px rgba(32, 36, 42, .06), 0 1px 1px rgba(32, 36, 42, .04);--shadow-md: 0 6px 20px rgba(32, 36, 42, .08), 0 2px 6px rgba(32, 36, 42, .05);--shadow-lg: 0 20px 45px rgba(32, 36, 42, .14), 0 6px 16px rgba(32, 36, 42, .08)}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--gutter: clamp(20px, 6vw, 72px)}:root{--font-display: "Playfair Display", serif;--font-body: "DM Sans", sans-serif;--text-xs: 12px;--text-sm: 13px;--text-md: 14px;--text-lg: 16px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 30px}*{box-sizing:border-box}:root{font-family:var(--font-body);color:var(--ink);background:var(--cream);line-height:1.5;font-synthesis:none}html{font-variant-numeric:lining-nums}body{margin:0}a{color:inherit;text-decoration:none}p a,li a{color:var(--brand-teal)}p a:hover,li a:hover{color:var(--brand-primary)}main :is(p,li) a:not([class]){text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}main :is(p,li) a:not([class]):hover{text-decoration-thickness:2px}h1,h2,h3{font-family:var(--font-display);font-feature-settings:"liga" 1,"dlig" 1}h1{font-weight:600}h2,h3,h4{font-weight:500}h1,h2,h3,h4{color:var(--brand-primary)}:is(.hero,.photo-banner,.countdown,.intro-band,.prayer-cta,.book-a-tent-closing-cta,footer) :is(h1,h2,h3,h4){color:var(--cream)}.tent-widget :is(h1,h2,h3,h4){color:var(--brand-primary)}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}::selection{background:var(--heritage-champagne);color:var(--brand-burgundy)}:is(:lang(kn),:lang(te)) :is(.eyebrow,.hero h1,.hero-meta,.countdown-grid span,.hero-promo-eyebrow,.hero-promo-dates label>span,.live-status dt,.announcement .date,.event time,.badge,.event-detail-meta dt,.day-tab-number,.tshirt-language-label,.tshirt-picker-group legend,.tshirt-picker-group>label,.tshirt-fieldset legend,.tshirt-optional){letter-spacing:normal}.spinner{width:14px;height:14px;border-radius:50%;border:2px solid currentColor;border-top-color:transparent;animation:dharur-spin .7s linear infinite;display:inline-block;vertical-align:-2px;margin-right:8px}@keyframes dharur-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spinner{animation:none}}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-rise{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.hero h1,.photo-banner h1,.intro-band h2,.section-heading h2,.placeholder h1,.placeholder h2,.prayer-cta h2,.history-preview h2,.history-article h2,.live-status h2,.admin-content h1,.login-form h1,.service-form-header h1,.service-form-success h2,.event-detail-heading h1,.event-detail-description h2,.event-related h2,.modal-header h2,.jatra-bazar-vendor-heading h1,.program-hero h1,.admin-card h2{text-wrap:balance}.skip-link{position:absolute;left:12px;top:0;transform:translateY(-200%);z-index:200;background:var(--cream);color:var(--ink);padding:10px 16px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);box-shadow:var(--shadow-sm);transition:transform var(--duration-fast) var(--ease)}.skip-link:focus-visible{transform:translateY(12px)}main#main:focus{outline:none}.modal-close,.menu,.photo-preview-remove,.admin-photo-remove{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.language,footer .footer-nav a,.text-link,.section-heading.row>a,.hero-promo-arrow,.emergency-card-phone{position:relative}:is(.language,.text-link,.section-heading.row>a,.hero-promo-arrow,.hero-promo-dot,.emergency-card-phone,footer .footer-nav a):after{content:"";position:absolute}.language:after{top:-12px;right:0;bottom:-12px;left:0}.text-link:after,.section-heading.row>a:after{top:-13px;right:0;bottom:-13px;left:0}.emergency-card-phone:after{top:-11px;right:0;bottom:-11px;left:0}.hero-promo-arrow:after{top:-7px;right:-7px;bottom:-7px;left:-7px}.hero-promo-dot:after{top:-10px;right:0;bottom:-10px;left:0}footer .footer-nav a:after{top:-5px;right:-9px;bottom:-5px;left:-9px}@media (max-width: 430px){.menu{position:relative}.menu:after{content:"";position:absolute;top:0;right:-8px;bottom:0;left:0}}:is(.photo-banner,.login-page,.countdown,.book-a-tent-closing-cta) :focus-visible,.prayer-cta a:focus-visible,.prayer-cta button:focus-visible,.hero a:focus-visible,.hero button:focus-visible,.intro-band a:focus-visible,.intro-band button:focus-visible,footer a:focus-visible,footer button:focus-visible,.day-tab.active:focus-visible,.admin-nav a.active:focus-visible,.login-tabs button.active:focus-visible{outline-color:var(--focus-ring-on-dark)}::placeholder{color:var(--muted);opacity:1}.required-mark{color:var(--danger);margin-left:2px}.login,.hero-carousel-arrow,.hero-carousel-dot,.pass-details summary,.tent-terms-read-more,.tshirt-back a,.tshirt-order-item-change a,.tshirt-page>p>a[href="/jatra-t-shirt"]{position:relative}:is(.login,.hero-carousel-arrow,.hero-carousel-dot,.pass-details summary,.tent-terms-read-more,.tshirt-back a,.tshirt-order-item-change a,.tshirt-page>p>a[href="/jatra-t-shirt"]):after{content:"";position:absolute}.login:after{top:-3px;right:0;bottom:-3px;left:0}.hero-carousel-arrow:after{top:-3px;right:-3px;bottom:-3px;left:-3px}.hero-carousel-dot:after{top:-10px;right:0;bottom:-10px;left:0}.pass-details summary:after{top:-11px;right:0;bottom:-11px;left:0}.tent-terms-read-more:after{top:-13px;right:0;bottom:-13px;left:0}:is(.tshirt-back a,.tshirt-page>p>a[href="/jatra-t-shirt"]):after{top:-11px;right:0;bottom:-11px;left:0}.tshirt-order-item-change a:after{top:-13px;right:0;bottom:-13px;left:0}.tshirt-gallery-nav:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px}@media (max-width: 767px){.admin-list-actions .text-link,.memory-card .text-link,td .text-link{min-width:44px;justify-content:center}.checkbox-field,body .invite-form button,body .tshirt-admin-actions .button,body .tshirt-admin-status-actions .button,.language-menu button{min-height:44px}body .primary-nav.open a{padding-top:11px;padding-bottom:11px}.leaflet-touch .leaflet-bar.leaflet-control-zoom a{width:44px;height:44px;line-height:44px}.pass-details summary:after{top:-12px;right:0;bottom:-8px;left:0}.pass-details+.pass-details summary:after{top:-8px;right:0;bottom:-12px;left:0}.tshirt-detail>p.tshirt-back>a:after{top:-12px;right:0;bottom:-12px;left:0}}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/DMSans_400Regular-C_2fA_LE.woff2) format("woff2"),url(/assets/DMSans_400Regular-Dvt-avFb.ttf) format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/DMSans_500Medium-IXAuPIy9.woff2) format("woff2"),url(/assets/DMSans_500Medium-BjjbzgJR.ttf) format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/DMSans_600SemiBold-DGHXkldC.woff2) format("woff2"),url(/assets/DMSans_600SemiBold-BC4L--j6.ttf) format("truetype")}@font-face{font-family:Playfair Display;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/PlayfairDisplay_500Medium-BBYvCfNP.woff2) format("woff2"),url(/assets/PlayfairDisplay_500Medium-BTlPw0MP.ttf) format("truetype")}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/PlayfairDisplay_600SemiBold-CW3qAP6d.woff2) format("woff2"),url(/assets/PlayfairDisplay_600SemiBold-lpftM5a9.ttf) format("truetype")}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(/assets/PlayfairDisplay_500Medium_Italic-B0zZvXHG.woff2) format("woff2"),url(/assets/PlayfairDisplay_500Medium_Italic-Cr7xHRHu.ttf) format("truetype")}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(/assets/PlayfairDisplay_600SemiBold_Italic-_z-98MJh.woff2) format("woff2"),url(/assets/PlayfairDisplay_600SemiBold_Italic-Cx5FUL8x.ttf) format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/NotoSansKannada_400Regular-FQFzpCYI.woff2) format("woff2"),url(/assets/NotoSansKannada_400Regular-C-8id3d9.ttf) format("truetype");unicode-range:U+0951-0952,U+0964-0965,U+0C80-0CFF,U+1CD0,U+1CD2-1CD3,U+1CDA,U+1CF2,U+1CF4,U+200C-200D,U+25CC,U+A830-A835}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/NotoSansKannada_500Medium-Bn8lbpHM.woff2) format("woff2"),url(/assets/NotoSansKannada_500Medium--3HeZHx8.ttf) format("truetype");unicode-range:U+0951-0952,U+0964-0965,U+0C80-0CFF,U+1CD0,U+1CD2-1CD3,U+1CDA,U+1CF2,U+1CF4,U+200C-200D,U+25CC,U+A830-A835}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/NotoSansKannada_600SemiBold-lBo1qnqT.woff2) format("woff2"),url(/assets/NotoSansKannada_600SemiBold-Dlm7hXP6.ttf) format("truetype");unicode-range:U+0951-0952,U+0964-0965,U+0C80-0CFF,U+1CD0,U+1CD2-1CD3,U+1CDA,U+1CF2,U+1CF4,U+200C-200D,U+25CC,U+A830-A835}@font-face{font-family:Playfair Display;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/NotoSansKannada_500Medium-Bn8lbpHM.woff2) format("woff2"),url(/assets/NotoSansKannada_500Medium--3HeZHx8.ttf) format("truetype");unicode-range:U+0951-0952,U+0964-0965,U+0C80-0CFF,U+1CD0,U+1CD2-1CD3,U+1CDA,U+1CF2,U+1CF4,U+200C-200D,U+25CC,U+A830-A835}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/NotoSansKannada_600SemiBold-lBo1qnqT.woff2) format("woff2"),url(/assets/NotoSansKannada_600SemiBold-Dlm7hXP6.ttf) format("truetype");unicode-range:U+0951-0952,U+0964-0965,U+0C80-0CFF,U+1CD0,U+1CD2-1CD3,U+1CDA,U+1CF2,U+1CF4,U+200C-200D,U+25CC,U+A830-A835}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(/assets/NotoSansKannada_500Medium-Bn8lbpHM.woff2) format("woff2"),url(/assets/NotoSansKannada_500Medium--3HeZHx8.ttf) format("truetype");unicode-range:U+0951-0952,U+0964-0965,U+0C80-0CFF,U+1CD0,U+1CD2-1CD3,U+1CDA,U+1CF2,U+1CF4,U+200C-200D,U+25CC,U+A830-A835}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(/assets/NotoSansKannada_600SemiBold-lBo1qnqT.woff2) format("woff2"),url(/assets/NotoSansKannada_600SemiBold-Dlm7hXP6.ttf) format("truetype");unicode-range:U+0951-0952,U+0964-0965,U+0C80-0CFF,U+1CD0,U+1CD2-1CD3,U+1CDA,U+1CF2,U+1CF4,U+200C-200D,U+25CC,U+A830-A835}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/NotoSansTelugu_400Regular-D-J-etk9.woff2) format("woff2"),url(/assets/NotoSansTelugu_400Regular-BKz_4W9t.ttf) format("truetype");unicode-range:U+0951-0952,U+0964-0965,U+0C00-0C7F,U+1CDA,U+1CF2,U+200C-200D,U+25CC}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/NotoSansTelugu_500Medium-bgxrqiEF.woff2) format("woff2"),url(/assets/NotoSansTelugu_500Medium-BexN7uWe.ttf) format("truetype");unicode-range:U+0951-0952,U+0964-0965,U+0C00-0C7F,U+1CDA,U+1CF2,U+200C-200D,U+25CC}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/NotoSansTelugu_600SemiBold-BzAFG4Qq.woff2) format("woff2"),url(/assets/NotoSansTelugu_600SemiBold-InTHoasS.ttf) format("truetype");unicode-range:U+0951-0952,U+0964-0965,U+0C00-0C7F,U+1CDA,U+1CF2,U+200C-200D,U+25CC}@font-face{font-family:Playfair Display;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/NotoSansTelugu_500Medium-bgxrqiEF.woff2) format("woff2"),url(/assets/NotoSansTelugu_500Medium-BexN7uWe.ttf) format("truetype");unicode-range:U+0951-0952,U+0964-0965,U+0C00-0C7F,U+1CDA,U+1CF2,U+200C-200D,U+25CC}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/NotoSansTelugu_600SemiBold-BzAFG4Qq.woff2) format("woff2"),url(/assets/NotoSansTelugu_600SemiBold-InTHoasS.ttf) format("truetype");unicode-range:U+0951-0952,U+0964-0965,U+0C00-0C7F,U+1CDA,U+1CF2,U+200C-200D,U+25CC}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(/assets/NotoSansTelugu_500Medium-bgxrqiEF.woff2) format("woff2"),url(/assets/NotoSansTelugu_500Medium-BexN7uWe.ttf) format("truetype");unicode-range:U+0951-0952,U+0964-0965,U+0C00-0C7F,U+1CDA,U+1CF2,U+200C-200D,U+25CC}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(/assets/NotoSansTelugu_600SemiBold-BzAFG4Qq.woff2) format("woff2"),url(/assets/NotoSansTelugu_600SemiBold-InTHoasS.ttf) format("truetype");unicode-range:U+0951-0952,U+0964-0965,U+0C00-0C7F,U+1CDA,U+1CF2,U+200C-200D,U+25CC}.state{padding:22px 0;border-top:1px solid var(--line);font-size:var(--text-md)}.state-loading{color:var(--muted)}.state-empty{color:var(--muted);padding:24px var(--space-4);line-height:1.55}.state-error,.state.state-error{color:var(--danger)}form .state.state-error,.tent-widget .state.state-error{font-weight:600}.state-success{color:var(--positive)}.page-banner{margin:0 var(--gutter);border-top:0;padding:14px 18px;background:var(--status-error-container);border-radius:var(--radius-md)}.session-notice{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;flex-wrap:wrap;margin:0 0 20px;padding:14px 16px;background:var(--cream);border:1px solid var(--line);border-left:4px solid var(--brand-saffron);border-radius:var(--radius-md);color:var(--ink)}.session-notice p{margin:0;flex:1 1 260px;font-size:var(--text-md)}.session-notice-expired{border-left-color:var(--danger)}.nowrap{white-space:nowrap}.banner-size-warning{flex-basis:100%;margin:8px 0 0;padding:10px 14px;background:var(--cream);border:1px solid var(--line);border-left:4px solid var(--brand-saffron);border-radius:var(--radius-md);color:var(--ink);font-size:var(--text-sm, 14px)}.state-retry{margin-top:10px}.skeleton{display:block;border-radius:6px;background:linear-gradient(90deg,var(--cream-deep) 25%,rgba(255,255,255,.75) 37%,var(--cream-deep) 63%);background-size:400% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}@media (prefers-reduced-motion: reduce){.skeleton{animation:none}}.skeleton-line{height:12px;margin:10px 0}.skeleton-line-short{width:22%;height:10px}.skeleton-line-title{width:55%;height:18px}.skeleton-line-medium{width:70%}.skeleton-list-row .skeleton-item{border-top:1px solid var(--line);padding:14px 0}.skeleton-list-card .skeleton-item{border:1px solid var(--line);border-radius:var(--radius-card);padding:16px 20px 20px;overflow:hidden}.skeleton-media{height:160px;margin:-16px -20px 14px;border-radius:0}.badge{display:inline-flex;align-items:center;gap:5px;font-size:var(--text-xs);letter-spacing:.04em;font-weight:600;padding:4px 10px;border-radius:var(--radius-pill);text-transform:uppercase}.badge-status.badge-positive{background:var(--status-success-container);color:var(--positive)}.badge-status.badge-neutral{background:#e6e2d6;color:#6a5a3c}.badge-status.badge-muted{background:var(--cream-deep);color:var(--muted)}.badge-status.badge-attention{background:var(--status-error-container);color:var(--danger)}.badge-org{background:var(--cream-deep);color:var(--ink-soft);text-transform:none;font-weight:500;letter-spacing:0}.badge-severity-advisory{background:#fbe8cf;color:#8a5a10}.badge-severity-warning{background:#f7dcb8;color:#9a4a12}.badge-severity-critical{background:var(--status-error-container);color:var(--danger)}.button-link{background:none;border:none;padding:8px 16px;font-size:var(--text-sm);color:var(--brand-teal);cursor:pointer;text-decoration:underline;transition:color var(--duration-fast) var(--ease)}.button-link:hover:not(:disabled){color:var(--brand-primary)}.button-link:disabled{color:var(--ink-soft);cursor:not-allowed;text-decoration:none}:is(input,select,textarea)[aria-invalid=true]:not(:focus){border-color:var(--danger)}.content-form{max-width:520px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-card);padding:32px;box-shadow:var(--shadow-sm)}.content-form form{display:flex;flex-direction:column}.content-form label{font-size:var(--text-sm);font-weight:600;color:var(--ink);margin:20px 0 8px}.content-form label:first-child{margin-top:0}.content-form input,.content-form textarea{padding:13px 15px;border:1px solid var(--border-control);border-radius:var(--radius-sm);font-size:15px;font-family:inherit;width:100%;background:#fff;color:var(--ink);transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.content-form input:focus,.content-form textarea:focus{outline:none;border-color:var(--focus-ring);box-shadow:0 0 0 3px var(--focus-ring-glow-soft)}.content-form textarea{resize:vertical;min-height:100px;line-height:1.5}.content-form .phone-input-group{margin:0}.content-form .state{padding:10px 0 0;border-top:0;font-size:var(--text-sm)}.content-form .button{margin-top:28px;align-self:flex-start}.content-form .state-success{padding:20px 22px;background:var(--cream-deep);border-radius:var(--radius-sm);border-left:3px solid var(--gold);color:var(--ink)}.content-form .state-success p{margin:0 0 6px}.content-form .state-success p:last-child{margin-bottom:0}.camping-nearby-links{display:flex;gap:20px;flex-wrap:wrap}.invite-form{display:flex;gap:8px;margin-top:4px}.invite-form input{flex:1;padding:9px 12px;font-size:var(--text-sm);border-radius:var(--radius-sm);border:1.5px solid var(--border-control);min-width:0}.invite-form button{padding:8px 16px;min-height:36px;font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-sm);border:1.5px solid var(--border-strong);background:transparent;color:var(--ink);cursor:pointer;white-space:nowrap;transition:border-color .15s var(--ease),color .15s var(--ease)}.invite-form button:hover:not(:disabled){border-color:var(--brand-teal);color:var(--brand-teal)}.invite-form button:disabled{opacity:.6;cursor:not-allowed}.phone-input-group{display:flex;align-items:stretch;gap:8px;margin:4px 0 8px}.phone-input-group input{flex:1 1 auto;width:auto;min-width:0}.country-code-dropdown{position:relative;flex:0 0 auto;min-width:68px}.country-code-trigger{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;height:100%;min-height:44px;padding:0 10px;background:#fff;border:1px solid var(--border-control);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-md);color:var(--ink);transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.country-code-trigger:hover{border-color:var(--brand-teal)}.country-code-trigger:focus{border-color:var(--brand-teal);box-shadow:0 0 0 3px var(--focus-ring-glow-soft);outline:none}.country-code-dial{font-weight:500;white-space:nowrap}.country-code-arrow{font-size:10px;color:var(--ink-soft);flex-shrink:0}.country-code-list{min-width:min(240px,calc(100vw - 32px));overflow-y:auto;margin:0;padding:4px 0;list-style:none;background:#fff;border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);z-index:2100}.country-code-option{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;transition:background var(--duration-fast) var(--ease)}.country-code-option:hover{background:var(--cream-deep)}.country-code-option.selected{background:var(--cream);color:var(--brand-teal)}.country-code-option .country-code-dial{min-width:40px;font-weight:500}.country-code-name{font-size:var(--text-sm);color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.country-code-option.selected .country-code-name{color:var(--brand-teal)}.otp-input-container{display:flex;gap:8px;margin:8px 0 12px;justify-content:center}.otp-input-box{width:100%;max-width:52px;height:52px;padding:0;text-align:center;font-size:var(--text-2xl);font-weight:600;border:1px solid var(--border-control);border-radius:var(--radius-sm);background:#fff;color:var(--ink);transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.otp-input-box:focus{border-color:var(--brand-teal);box-shadow:0 0 0 3px var(--focus-ring-glow-soft);outline:none}.otp-input-box:disabled{background:var(--cream-deep);cursor:not-allowed}.otp-input-container .otp-input-box{min-width:0}@media (max-width: 480px){.content-form input,.content-form textarea,.modal-field input,.modal-field textarea,.phone-input-group input,.mobile-phone-input input,.otp-input-box,.otp-code-input input{font-size:16px}}@media (max-width: 480px){:is(input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=color],[type=submit],[type=button],[type=reset],[type=image],[type=hidden]),select,textarea):not(.otp-input-box):not(.otp-code-input input){font-size:16px}.otp-input-container .otp-input-box{font-size:20px}}@media (max-width: 380px){.otp-input-container .otp-input-box{font-size:18px}}@media (max-width: 380px){.phone-input-group input[type=tel]{padding-left:10px;padding-right:10px}.modal .admin-form:has(.phone-input-group){padding:18px 14px}}.otp-resend-container{text-align:center;margin-top:12px}.admin-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-sm);font-size:var(--text-md)}.admin-table th,.admin-table td{padding:14px 16px;text-align:left;vertical-align:middle}.admin-table thead th{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--ink-soft);background:var(--cream-deep);border-bottom:1px solid var(--line);white-space:nowrap;position:sticky;top:0;z-index:1}.admin-table tbody tr:not(:last-child){border-bottom:1px solid var(--line)}.admin-table tbody tr{transition:background-color .12s var(--ease)}.admin-table tbody tr:hover{background:var(--cream-deep)}.admin-table td:first-child,.admin-table th:first-child{width:36px}.admin-table input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--brand-teal)}.admin-table-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:16px}.admin-table-count{font-size:var(--text-sm);color:var(--muted)}.header{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px var(--gutter);border-bottom:1px solid var(--line);background:#f7f4ecf0;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);position:sticky;top:0;z-index:30;transition:box-shadow .25s var(--ease)}.header.is-scrolled{box-shadow:0 8px 24px -12px #20242a38}.brand{display:flex;align-items:center;gap:10px;color:var(--ink)}.brand strong{display:block;font-size:var(--text-xl);font-weight:600;letter-spacing:.02em}.brand small{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.cross{font-size:28px;color:var(--brand-burgundy)}.primary-nav{display:none}.primary-nav a{position:relative;font-size:15px;color:var(--ink-soft);padding-bottom:2px}.primary-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-3px;height:2px;background:var(--gold);transition:right .2s var(--ease)}.primary-nav a:hover:after,.primary-nav a.active:after{right:0}.primary-nav a:hover,.primary-nav a.active{color:var(--brand-teal)}.header-actions{display:flex;align-items:center;gap:4px}.label-short{display:inline}.label-full{display:none}@media (min-width: 640px){.header-actions{gap:12px}.label-short{display:none}.label-full{display:inline}.provider-trigger,.login{padding:9px 16px}}.language,.menu{border:0;background:transparent;color:var(--ink-soft);font-size:var(--text-md)}.language{display:inline-flex;align-items:center;gap:2px;white-space:nowrap}.brand{flex-shrink:0;white-space:nowrap}.menu{font-size:var(--text-xl);padding:4px 8px}.language-switcher{position:relative}.language-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:140px;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:6px;list-style:none;margin:0;z-index:30}.language-menu li+li{margin-top:2px}.language-menu button{display:block;width:100%;text-align:left;border:0;background:transparent;border-radius:var(--radius-sm);padding:8px 10px;font-size:var(--text-md);color:var(--ink)}.language-menu button:hover{background:#20242a0f}.language-menu button.active{color:var(--brand-teal);font-weight:600}.provider-switcher{position:relative}.provider-trigger{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border-strong);border-radius:var(--radius-pill);padding:8px 12px;font-size:var(--text-md);white-space:nowrap;background:transparent;color:var(--ink);transition:border-color .15s var(--ease),color .15s var(--ease)}.provider-trigger:hover{border-color:var(--brand-teal);color:var(--brand-teal)}@media (max-width: 430px){.header{padding-left:12px;padding-right:12px;gap:8px}.brand{gap:6px}.header-actions{gap:2px}.provider-trigger,.login{padding:8px;gap:4px}.menu{min-width:36px;padding:4px}}@media (max-width: 340px){.header{padding-left:10px;padding-right:10px;gap:6px}.provider-trigger,.login{padding:8px 6px}.login>[aria-hidden=true],.provider-trigger>[aria-hidden=true]{display:none}}.provider-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:6px;list-style:none;margin:0;z-index:30}.provider-menu li+li{margin-top:2px}.provider-menu a{display:block;width:100%;border-radius:var(--radius-sm);padding:9px 10px;font-size:var(--text-md);color:var(--ink)}.provider-menu a:hover{background:#20242a0f;color:var(--brand-teal)}.login{border:1px solid var(--border-strong);border-radius:var(--radius-pill);padding:8px 12px;font-size:var(--text-md);white-space:nowrap}.header-account{display:flex;align-items:center;gap:10px}.text-link{font-size:var(--text-md);color:var(--brand-teal);border:0;background:transparent;padding:0}.text-link:hover{text-decoration:underline}.link-arrow{display:inline-flex;vertical-align:-.15em}.link-arrow-forward{margin-left:.3em}.link-arrow-back{margin-right:.35em}.text-link-danger{color:var(--danger)}.primary-nav.open{display:flex;flex-direction:column;gap:4px;position:absolute;top:100%;left:0;right:0;background:var(--cream);border-bottom:1px solid var(--line);padding:8px var(--gutter) 18px;z-index:20;max-height:calc(100vh - 100%);max-height:calc(100dvh - 100%);overflow-y:auto;overscroll-behavior:contain}.primary-nav.open a{padding:10px 0;border-bottom:1px solid var(--line)}.provider-switcher{display:none}.nav-providers{display:flex;flex-direction:column;margin-top:10px}.nav-providers-heading{margin:8px 0 2px;font-size:var(--text-sm);color:var(--ink-soft)}@media (min-width: 640px){.provider-switcher{display:block}.nav-providers{display:none}}@media (min-width: 768px){.header{padding:0 var(--gutter);height:82px}}@media (min-width: 1280px){.primary-nav{display:flex;gap:24px}.primary-nav.open{position:static;flex-direction:row;padding:0;border:0;background:transparent;max-height:none;overflow:visible}.primary-nav.open a{padding:0;border:0}.menu{display:none}}.header-back{display:none}@media (max-width: 767px){.header-back{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;margin-left:-10px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--ink)}.header-back+.brand{margin-right:auto}}@media (max-width: 767px){.header{padding-top:calc(12px + env(safe-area-inset-top,0px))}}@media (max-width: 340px){.header-back{margin-right:-6px}}.hero{position:relative;padding:40px var(--gutter) 36px;display:flex;flex-direction:column;gap:24px;overflow:hidden;color:var(--cream);background:var(--brand-primary-deep)}.hero-top{display:flex;flex-direction:column;gap:32px;position:relative;z-index:1}.hero-tent-column{display:flex;flex-direction:column;gap:18px}@media (min-width: 1100px){.hero-top{flex-direction:row;align-items:flex-start;gap:36px}.hero-copy{flex:1}.hero-tent-column{flex:1.25}.countdown{max-width:480px}}.hero{background:var(--brand-primary-deep, #54131D)}.eyebrow{margin:0 0 16px;font-variant-caps:small-caps;letter-spacing:.22em;font-size:var(--text-sm);color:var(--brand-teal);font-weight:600}.hero .eyebrow{color:var(--gold-light)}.hero-copy{position:relative;z-index:1}.hero h1{font:600 clamp(36px,5.4vw,74px)/1.02 "Playfair Display",serif;letter-spacing:-.01em;margin:0;color:var(--cream)}.hero h1 em{color:var(--gold-light);font-weight:500;font-style:italic}.hero-text{max-width:560px;color:var(--cream);margin:18px 0 8px;font-size:17px;line-height:1.55}.hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 20px;font-size:var(--text-sm);letter-spacing:.04em;color:var(--cream);text-transform:uppercase}.hero-meta span{display:inline-flex;align-items:center;gap:16px}.hero-meta span:not(:last-child):after{content:"";width:4px;height:4px;border-radius:50%;background:var(--gold-light);flex:0 0 auto}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;position:relative;z-index:1}.button{padding:17px 28px;min-height:44px;border-radius:var(--radius-pill);font-size:var(--text-md);font-weight:600;letter-spacing:.01em;border:0;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:transform var(--duration-slow) var(--ease-slow),box-shadow var(--duration-slow) var(--ease-slow),background-color var(--duration-slow) var(--ease-slow),border-color var(--duration-slow) var(--ease-slow),opacity var(--duration-slow) var(--ease-slow)}.button.danger{background:var(--danger);color:#fff;box-shadow:inset 0 1px #fff3,inset 0 -1px #0000001f}.button-disabled{opacity:.55;cursor:default;pointer-events:none}.button.primary{background:var(--brand-saffron);color:var(--on-primary);box-shadow:inset 0 1px #ffffff38,inset 0 -1px #00000029,0 0 0 1px var(--scrim-gold-50) inset,0 8px 20px -6px #20242a59}.button.primary:hover:not(:disabled){background:var(--brand-saffron-hover);transform:translateY(-2px);box-shadow:inset 0 1px #ffffff38,inset 0 -1px #00000029,0 0 0 1px var(--scrim-gold-70) inset,0 0 22px var(--gold-glow),var(--shadow-md)}.button.danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-md)}.button.secondary{border:1.5px solid var(--border-strong);background:transparent;color:var(--ink);box-shadow:inset 0 1px #ffffff80}.button.secondary:hover:not(:disabled){border-color:var(--brand-teal);color:var(--brand-teal);transform:translateY(-2px);box-shadow:inset 0 1px #ffffff80,0 0 18px var(--gold-glow)}.button:disabled{opacity:.6;cursor:not-allowed}.button .spinner{margin-right:0}.hero .button.secondary{border-color:#f7f4ec8c;color:var(--cream)}.hero .button.secondary:hover:not(:disabled){border-color:var(--cream);color:var(--cream)}.hero .button,.prayer-cta .button{padding:20px 32px;font-size:15px}.hero .button{white-space:nowrap}.hero-feature-row{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:20px 32px;position:relative;z-index:1}.hero-feature{display:flex;align-items:center;gap:12px;color:var(--cream)}.hero-feature-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#f7f4ec1a;color:var(--gold-light);flex:0 0 auto}.hero-feature strong{display:block;font-size:var(--text-sm)}.hero-feature span{display:block;font-size:12px;color:var(--muted-on-dark)}@media (max-width: 767px){.hero-feature-row{gap:16px 24px}}@media (min-width: 768px) and (max-width: 1099px){.hero-feature-row{gap:20px 28px}}@media (min-width: 768px){.hero{padding:90px var(--gutter) 74px}.hero-top{flex-direction:row;align-items:flex-start;justify-content:space-between}.hero-copy{max-width:600px}}@media (min-width: 1280px){.hero-text{max-width:420px}}@media (min-width: 1100px) and (max-height: 900px){.hero{padding:28px var(--gutter) 24px;gap:18px}.hero-top{gap:28px}.hero h1{font-size:clamp(34px,4.6vw,58px)}.hero-text{margin:14px 0 6px;font-size:16px}.hero-meta{margin-bottom:14px}.hero .button{padding:14px 24px}}@media (min-width: 1100px) and (max-height: 780px){.hero{padding:20px var(--gutter) 18px}.hero h1{font-size:clamp(30px,4vw,46px)}.hero-tent-column{gap:12px}}.hero-promo{position:relative;z-index:1;display:flex;flex-direction:column;gap:12px}.hero-promo-frame{position:relative}.hero-promo-slide{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-height:236px;padding:22px;border-radius:var(--radius-lg, 18px);background:#ffffff12;border:1px solid rgba(247,244,236,.16);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.hero-promo-slide:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;border-radius:var(--radius-lg, 18px) 0 0 var(--radius-lg, 18px)}.hero-promo-slide-tshirt:before{background:var(--brand-primary-light, #a33b4b)}.hero-promo-slide-pass:before{background:var(--brand-gold, #b08d46)}.hero-promo-slide-tent:before{background:var(--brand-gold-light, #d6bd7a)}.hero-promo-gallery{display:flex;gap:12px;align-items:center}.hero-promo-shot{width:88px;height:112px;object-fit:contain;border-radius:14px;background:var(--cream, #FFF8ED);padding:8px;box-shadow:0 10px 24px -12px #00000080}.hero-promo-lockup{margin:0;font:600 clamp(28px,3.8vw,46px)/1.02 "Playfair Display",serif;letter-spacing:-.01em;color:var(--gold-light, #d6bd7a);text-shadow:0 6px 26px rgba(0,0,0,.35);max-width:12ch}.hero-promo-tent{display:flex;flex-direction:column;gap:6px;width:100%}.hero-promo-tent-title{margin:0;font:600 clamp(19px,2.1vw,25px)/1.2 "Playfair Display",serif;color:var(--cream, #FFF8ED)}.hero-promo-tent-sub{margin:0;color:var(--muted-on-dark, rgba(247,244,236,.78));font-size:var(--text-sm, 14px)}.hero-promo-tent .tent-widget{margin-top:6px}.hero-promo-tent-link{display:inline-flex;align-items:center;gap:6px;margin-top:8px;color:var(--gold-light, #d6bd7a);font-weight:600;font-size:var(--text-sm, 14px)}.hero-promo-eyebrow{margin:0;font-size:var(--text-xs, 12px);letter-spacing:.16em;text-transform:uppercase;color:var(--gold-light, #d6bd7a)}.hero-promo-title{margin:0;font:500 clamp(22px,2.4vw,30px)/1.15 "Playfair Display",serif;color:var(--cream, #FFF8ED)}.hero-promo-body{margin:0;max-width:34ch;color:var(--muted-on-dark, rgba(247,244,236,.78));font-size:var(--text-sm, 14px);line-height:1.55}.hero-promo-price{margin:0;color:var(--cream, #FFF8ED);font-weight:600;font-size:var(--text-md, 16px)}.hero-promo-slide .button{margin-top:auto}.hero-promo-controls{display:flex;align-items:center;justify-content:center;gap:14px}.hero-promo-dots{display:flex;align-items:center;gap:0;list-style:none;margin:0;padding:0}.hero-promo-dot{position:relative;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:none;cursor:pointer}.hero-promo-dot:before{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:#f7f4ec59;transition:background-color .2s var(--ease),transform .2s var(--ease)}.hero-promo-dot.is-active:before{background:var(--gold-light, #d6bd7a);transform:scale(1.25)}.hero-promo-dot:focus-visible{outline:2px solid var(--gold-light, #d6bd7a);outline-offset:3px}.hero-promo-arrow{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:50%;border:1px solid rgba(247,244,236,.28);background:transparent;color:var(--cream, #FFF8ED);cursor:pointer;transition:background-color .2s var(--ease),border-color .2s var(--ease)}.hero-promo-arrow:hover{background:#f7f4ec1f;border-color:#f7f4ec80}.hero-promo-arrow-flip{transform:rotate(180deg)}.promo-strip{padding:0 0 40px}.promo-strip-inner{max-width:var(--container, 1100px);margin:0 auto;padding:0 var(--gutter, 20px);display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.promo-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:20px;border:1px solid var(--line, rgba(32,36,42,.12));border-radius:var(--radius-md, 12px);background:var(--surface-primary, #fff);box-shadow:var(--shadow-sm, 0 1px 2px rgba(32,36,42,.06));text-decoration:none;color:inherit;transition:transform .2s var(--ease),box-shadow .2s var(--ease),border-color .2s var(--ease)}.promo-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md, 0 6px 16px rgba(32,36,42,.12));border-color:var(--brand-gold, #b08d46)}.promo-card:active{transform:translateY(0)}.promo-card.is-active{border-color:var(--brand-gold, #b08d46);box-shadow:inset 0 3px 0 var(--brand-gold, #b08d46),var(--shadow-sm, 0 1px 2px rgba(32,36,42,.06))}.promo-card.is-active .promo-card-title{color:var(--brand-primary, #7b1e2b)}.promo-card-mark{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:var(--brand-gold-container, #f7e5b5);color:var(--on-gold, #261900);font:600 18px/1 Playfair Display,serif}.promo-card-image{width:40px;height:40px;object-fit:contain;border-radius:10px;background:var(--cream, #FFF8ED)}.promo-card-eyebrow{font-size:var(--text-xs, 12px);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft, #6b625b)}.promo-card-title{font:600 var(--text-lg, 18px)/1.25 "Playfair Display",serif}.promo-card-body{color:var(--ink-soft, #6b625b);font-size:var(--text-sm, 14px);line-height:1.5}.promo-card-cta{display:inline-flex;align-items:center;gap:6px;margin-top:2px;color:var(--brand-primary, #7b1e2b);font-weight:600;font-size:var(--text-sm, 14px)}@media (max-width: 767px){.promo-strip-inner{grid-template-columns:1fr;gap:14px}.promo-card{padding:16px}.hero-promo-slide{min-height:0;padding:22px}}@media (min-width: 768px) and (max-width: 1099px){.promo-strip-inner{grid-template-columns:repeat(3,1fr);gap:14px}}.home-tent-block{max-width:var(--container, 1100px);margin:0 auto 40px;padding:0 var(--gutter, 20px);display:grid;gap:20px}.home-tent-invite{background:var(--surface-primary, #fff);border:1px solid var(--line);border-radius:var(--radius-md, 12px);padding:20px 24px}.home-tent-invite h2{margin:0 0 4px;font:600 var(--text-xl, 20px)/1.2 "Playfair Display",serif;color:var(--brand-primary, #7b1e2b)}.home-tent-invite p{margin:0;color:var(--ink-soft, #6b625b)}.home-tent-block .hero-feature-row{gap:16px 28px}.home-tent-block .hero-feature{color:var(--ink, #263746)}.home-tent-block .hero-feature span{color:var(--ink-soft, #6b625b)}.home-tent-block .hero-feature-icon{background:var(--brand-gold-container, #f7e5b5);color:var(--on-gold, #261900)}.hero-promo-slide{grid-area:1 / 1}.hero-promo-frame{display:grid}.hero-promo-slide:not(.is-active){visibility:hidden}.hero-promo-tent .hero-feature-row{flex-wrap:nowrap;gap:10px 16px;margin-top:10px}.hero-promo-tent .hero-feature{gap:8px}.hero-promo-tent .hero-feature-icon{width:30px;height:30px}.hero-promo-tent .hero-feature strong{font-size:12px}.hero-promo-tent .hero-feature span{font-size:var(--text-xs)}.hero-promo-dates{display:flex;align-items:flex-end;gap:10px;width:100%;margin-top:4px;flex-wrap:wrap}.hero-promo-dates label{display:flex;flex-direction:column;gap:4px;flex:1 1 120px;min-width:0}.hero-promo-dates label>span{font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--gold-light, #d6bd7a)}.hero-promo-dates input{width:100%;padding:9px 10px;border-radius:8px;border:1px solid rgba(247,244,236,.28);background:#ffffff0f;color:var(--cream, #FFF8ED);font:inherit;font-size:14px;color-scheme:dark}.hero-promo-dates input:focus-visible{outline:2px solid var(--gold-light, #d6bd7a);outline-offset:2px}.hero-promo-dates .button{flex:0 0 auto;padding:10px 18px;white-space:nowrap}@media (max-width: 767px){.hero-promo-dates{flex-direction:column;align-items:stretch}.hero-promo-dates .button{width:100%}}.hero-promo-frame{position:relative;display:block}.hero-promo-slide{transition:opacity .32s var(--ease),transform .32s var(--ease)}.hero-promo-slide:not(.is-active){position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none}.hero-promo-slide{min-height:0}.hero-promo-slide-tshirt{min-height:200px;justify-content:center}.hero-promo-frame{border-radius:20px;overflow:hidden;box-shadow:0 18px 40px -24px #14060abf}.hero-promo-slide-tshirt{background:linear-gradient(150deg,var(--brand-gold-container, #f7e5b5) 0%,#fdf6e6 58%,var(--surface-secondary, #f7f1e7) 100%);color:var(--text-primary, #263746);padding:18px}@media (min-width: 640px){.hero-promo-slide-tshirt{flex-direction:row;align-items:center;gap:18px}.hero-promo-slide-tshirt .hero-promo-gallery{order:-1;flex:0 0 auto;width:46%;max-width:260px;margin:0}}.hero-promo-slide-tshirt .hero-promo-eyebrow{color:var(--brand-gold-dark, #765a1b)}.hero-promo-slide-tshirt h3{color:var(--brand-primary, #7b1e2b)}.hero-promo-slide-tshirt p{color:var(--text-secondary, #6b625b)}.hero-promo-slide-tshirt .hero-promo-shot{background:var(--surface-primary, #fff);border:1px solid var(--brand-gold, #b08d46);border-radius:12px;padding:6px;box-shadow:0 6px 16px -10px #54131d80}.hero-promo-slide-pass{background:radial-gradient(120% 90% at 88% 8%,#b08d4657,#b08d4600 62%),linear-gradient(160deg,var(--brand-primary-dark, #54131d) 0%,var(--brand-primary, #7b1e2b) 100%)}.hero-promo-slide-pass h3{color:var(--brand-gold-container, #f7e5b5)}.hero-promo-slide-pass p{color:var(--brand-gold-light, #d6bd7a)}.hero-promo-slide-tent{background:linear-gradient(165deg,var(--brand-primary, #7b1e2b) 0%,var(--brand-primary-dark, #54131d) 100%)}.hero-promo-slide-tent .hero-feature{border-color:#d6bd7a57}.hero-promo-slide-tent .hero-feature-title,.hero-promo-eyebrow{color:var(--brand-gold-light, #d6bd7a)}.hero-promo-text{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1 1 auto}.hero-promo-text .button{align-self:flex-start;margin-top:4px}@media (min-width: 640px){.hero-promo-slide-tshirt .hero-promo-text{flex:1 1 auto}.hero-promo-slide-tshirt .hero-promo-gallery{order:-1}}.hero-promo-slide-tshirt .hero-promo-title{color:var(--brand-primary, #7b1e2b)}.hero-promo-slide-tshirt .hero-promo-price{color:var(--brand-gold-dark, #765a1b);font-weight:600}.hero-promo-slide-pass .hero-promo-title{font-size:clamp(30px,3.6vw,46px);line-height:1.02;letter-spacing:-.01em;color:var(--brand-gold-light, #d6bd7a);text-shadow:0 2px 18px rgba(0,0,0,.28)}.hero-promo-slide-pass .hero-promo-body{color:var(--brand-gold-container, #f7e5b5)}.hero-promo-slide-tent .hero-promo-eyebrow,.hero-promo-slide-tent .hero-promo-tent-link{display:none}.hero-promo-frame,.hero-promo-slide{width:100%}.hero-promo-slide-tshirt .hero-promo-gallery img{height:168px;width:100%;object-fit:contain}.hero-promo-slide-tshirt .hero-promo-gallery{display:grid;grid-template-columns:1fr;gap:8px}@media (min-width: 640px){.hero-promo-slide-tshirt .hero-promo-gallery{grid-template-columns:repeat(auto-fit,minmax(0,1fr));max-width:280px}}.hero-tent-column{display:flex;flex-direction:column}.hero-promo{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.hero-promo-frame{flex:1 1 auto}.hero-promo-slide{height:100%}.hero-promo-controls{margin-top:auto}.hero-promo-slide{padding:22px}.hero-promo-slide-tshirt{min-height:264px}@media (min-width: 1100px) and (max-height: 900px){.hero-promo-slide{padding:18px}.hero-promo-slide-tshirt{min-height:232px}}.hero-promo-slide-pass .hero-promo-text{border:1px solid var(--brand-gold, #b08d46);border-radius:16px;padding:18px 20px;background:linear-gradient(155deg,#b08d4633,#54131d8c);box-shadow:inset 0 1px #f7e5b52e}.hero-promo-slide-pass .hero-promo-title,.hero-promo-slide-pass .hero-promo-eyebrow{margin:0}.hero-promo-slide-pass .hero-promo-price{margin:0;color:var(--brand-gold-container, #f7e5b5);font-weight:600}.hero-promo-slide-tent .hero-feature-row{gap:10px}.hero-promo-slide-tent .hero-feature{background:#ffffff12;border:1px solid rgba(214,189,122,.38);border-radius:12px;padding:10px 12px;box-shadow:inset 0 1px #f7e5b51f}.hero-promo-slide-tent .hero-feature-title{color:var(--brand-gold-light, #d6bd7a)}.hero-promo-slide-tent .hero-feature span{color:var(--brand-gold-container, #f7e5b5)}.hero-promo-slide-tent .hero-promo-dates{background:#ffffff12;border:1px solid rgba(214,189,122,.38);border-radius:12px;padding:12px}@media (min-width: 640px){.hero-promo-slide-tent .hero-feature-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hero-promo-slide-tent .hero-feature{align-items:center}}.hero-promo-slide-pass{justify-content:center}.hero-promo-slide-pass .hero-promo-text{width:100%}.hero-promo-prize{display:block;width:100%;aspect-ratio:16 / 9;overflow:hidden;border-radius:14px;border:1px solid var(--brand-gold, #b08d46);background:#0a0507;box-shadow:inset 0 1px #f7e5b529,0 10px 24px -14px #0009}.hero-promo-prize-shot{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%}.hero-promo-creative{width:100%;height:auto;aspect-ratio:16 / 9;object-fit:contain;object-position:50% 50%;border-radius:14px;border:1px solid var(--brand-gold, #b08d46);background:var(--cream, #f6f1e6)}@media (min-width: 1100px) and (max-height: 900px){.hero-promo-prize{aspect-ratio:16 / 5}}.hero-promo-slide-pass,.hero-promo-slide-tent{border-color:#d6bd7a73;background:radial-gradient(120% 90% at 88% 6%,#b08d4661,#b08d4600 62%),radial-gradient(80% 70% at 0% 100%,#b08d4629,#b08d4600 58%),linear-gradient(160deg,var(--brand-primary-dark, #54131d) 0%,var(--brand-primary, #7b1e2b) 100%)}.hero-promo-slide-pass .button.primary,.hero-promo-slide-tent .button.primary{background:linear-gradient(180deg,var(--brand-gold-light, #d6bd7a) 0%,var(--brand-gold, #b08d46) 100%);color:var(--on-gold, #261900);box-shadow:inset 0 1px #ffffff4d,0 8px 20px -8px #14060acc}.hero-promo-slide-pass .button.primary:hover:not(:disabled),.hero-promo-slide-tent .button.primary:hover:not(:disabled){background:linear-gradient(180deg,var(--brand-gold-container, #f7e5b5) 0%,var(--brand-gold-light, #d6bd7a) 100%);color:var(--on-gold, #261900);box-shadow:inset 0 1px #ffffff59,0 0 22px var(--gold-glow, rgba(176, 141, 70, .3)),var(--shadow-md, 0 6px 16px rgba(0, 0, 0, .12))}.hero-promo-slide-pass .hero-promo-text,.hero-promo-slide-tent .hero-feature,.hero-promo-slide-tent .hero-promo-dates{background:linear-gradient(155deg,#f7e5b526,#b08d461c);border:1px solid rgba(214,189,122,.5);box-shadow:inset 0 1px #f7e5b538}.hero-promo-slide-tent .hero-promo-tent-title{color:var(--brand-gold-container, #f7e5b5)}.hero-promo-slide-tent .hero-promo-tent-sub{color:var(--brand-gold-light, #d6bd7a)}.hero-promo-slide-tent .hero-feature strong{color:var(--brand-gold-container, #f7e5b5)}.hero-promo-slide-tent .hero-feature>div>span{color:#f7e5b5d9}.hero-promo-slide-tent .hero-feature .hero-feature-icon{background:linear-gradient(160deg,var(--brand-gold-container, #f7e5b5) 0%,var(--brand-gold-light, #d6bd7a) 100%);color:var(--on-gold, #261900);box-shadow:0 2px 8px -3px #14060acc}.hero-promo-slide-tent .hero-promo-dates input{border-color:#d6bd7a8c;background:#f7e5b51a;color:var(--brand-gold-container, #f7e5b5)}.hero-promo-prize{border-color:var(--brand-gold, #b08d46);box-shadow:inset 0 1px #f7e5b533,0 0 0 1px #b08d4640,0 10px 24px -14px #0009}.hero-promo-slide-pass .hero-promo-price{color:var(--brand-gold-container, #f7e5b5)}.hero{min-height:0;height:auto;padding-block:0}.hero .hero-carousel{position:relative;z-index:1;display:flex;flex-direction:column;width:min(100%,var(--container, 1100px));height:auto;margin-inline:auto}.hero-carousel-frame{position:relative;display:grid;flex:0 0 auto;min-height:0;cursor:pointer}.hero-carousel-slide{grid-area:1 / 1;position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:0;width:100%;height:auto;min-height:0;padding-bottom:0;--hero-fade: .9s;--hero-fade-ease: cubic-bezier(.45, 0, .25, 1);opacity:0;visibility:hidden;will-change:opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:opacity 0s linear var(--hero-fade),visibility 0s linear var(--hero-fade)}.hero-carousel-slide:not(.is-active){pointer-events:none}.hero-carousel-slide.is-active{z-index:1;opacity:1;visibility:visible;transition:opacity var(--hero-fade) var(--hero-fade-ease),visibility 0s}.hero-carousel-slide .hero-copy,.hero-carousel-slide .hero-carousel-promo-cta{opacity:0;transition:opacity .3s linear var(--hero-fade)}.hero-carousel-slide.is-active .hero-copy,.hero-carousel-slide.is-active .hero-carousel-promo-cta{opacity:1;transition:opacity .6s var(--hero-fade-ease) .25s}.hero-carousel-slide.has-hero-image{width:100vw;margin-left:calc((100% - 100vw)/2);min-height:clamp(420px,36vw,500px);isolation:isolate;background:var(--brand-primary-deep, #54131D)}.hero-carousel-slide.has-hero-image:before{content:"";position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(84,19,29,.94) 0%,rgba(84,19,29,.86) 42%,rgba(84,19,29,.48) 54%,transparent 70%);pointer-events:none}.hero-carousel-jatra-image{position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none}.hero-carousel-slide.has-hero-image .hero-copy{position:relative;z-index:1}.hero-carousel-slide.has-artwork{display:block;width:100vw;margin-left:calc((100% - 100vw)/2);min-height:clamp(420px,36vw,500px);isolation:isolate}.hero-carousel-slide .hero-copy{display:flex;flex-direction:column;justify-content:center;min-width:0;max-width:none;padding:clamp(32px,4vw,56px);cursor:pointer}.hero-carousel-slide:first-child .hero-copy{padding:32px clamp(28px,3vw,44px)}.hero-carousel-slide:first-child h1{font-size:clamp(36px,4.5vw,60px)}.hero-carousel-slide .hero-copy>.eyebrow{margin-bottom:16px}.hero-carousel-slide .hero-text{max-width:560px}.hero-carousel-slide .hero-actions{margin-top:24px}.hero-carousel-slide .hero-meta{margin-top:20px}.hero-carousel-price{margin:16px 0 0;color:var(--gold-light);font-size:var(--text-lg, 18px);font-weight:600}.hero-carousel-artwork{display:block;position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:fill;object-position:center;pointer-events:none}.hero-carousel picture{display:contents}.hero-carousel picture>source{display:none}.hero-carousel-artwork-fill,.hero-carousel-promo-fallback{display:none}.hero-carousel-promo-link{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;display:block;color:inherit}.hero-carousel-promo-cta{position:absolute;right:24px;bottom:24px}.hero-carousel-controls{position:relative;z-index:2;align-self:center;margin-top:12px;margin-bottom:16px;display:flex;align-items:center;justify-content:center;gap:14px}.hero-carousel-dots{display:flex;align-items:center;gap:0;list-style:none;margin:0;padding:0}.hero-carousel-dot{position:relative;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:none;cursor:pointer}.hero-carousel-dot:before{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:#f7f4ec59;transition:background-color .2s var(--ease),transform .2s var(--ease)}.hero-carousel-dot.is-active:before{background:var(--gold-light, #d6bd7a);transform:scale(1.25)}.hero-carousel-dot:focus-visible,.hero-carousel-arrow:focus-visible{outline:2px solid var(--gold-light, #d6bd7a);outline-offset:3px}.hero-carousel-arrow{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid rgba(247,244,236,.38);border-radius:50%;background:transparent;color:var(--cream, #fff8ed);cursor:pointer;transition:background-color .2s var(--ease),border-color .2s var(--ease)}.hero-carousel-arrow:hover{background:#f7f4ec1f;border-color:#f7f4eca6}@media (max-width: 899px){.hero{height:auto;min-height:0;padding-block:0}.hero .hero-carousel{height:auto}.hero-carousel-frame{flex:0 0 auto;min-height:0}.hero-carousel-slide{grid-area:1 / 1;display:flex;flex-direction:column;align-items:stretch;gap:28px;height:auto;min-height:0;padding-bottom:0}.hero-carousel-slide.has-hero-image,.hero-carousel-slide.has-artwork{display:flex;flex-direction:column;justify-content:center;width:100vw;max-width:none;margin-left:calc((100% - 100vw)/2);min-height:clamp(460px,90svh,640px);padding:0}.hero-carousel-slide.has-artwork{overflow:hidden;background:var(--brand-primary-deep, #54131D)}.hero-carousel-slide.has-artwork .hero-carousel-promo-link{display:flex;flex-direction:column;justify-content:center;gap:20px;padding:32px var(--gutter) 28px}.hero-carousel-artwork-fill{display:block;position:absolute;z-index:0;top:-24px;right:-24px;bottom:-24px;left:-24px;width:calc(100% + 48px);height:calc(100% + 48px);object-fit:cover;filter:blur(24px) brightness(.45);pointer-events:none}.hero-carousel-slide.has-artwork .hero-carousel-artwork{position:relative;z-index:1;inset:auto;width:100%;height:auto;max-height:70%;object-fit:contain;border-radius:12px;box-shadow:0 18px 40px -20px #000000b3}.hero-carousel-slide.has-artwork .hero-carousel-promo-cta{position:relative;z-index:1;right:auto;bottom:auto;align-self:flex-start;max-width:100%}.hero-carousel-slide .hero-copy{padding:36px var(--gutter) 0}.hero-carousel-slide .hero-actions{margin-top:20px}.hero-carousel-controls{margin-top:0;margin-bottom:20px}}@media (max-width: 767px){.hero{padding-block:0}.hero-carousel-slide{gap:22px}.hero-carousel-slide .hero-copy{padding-top:32px}.hero-carousel-slide .hero-meta{margin-top:16px}.hero-carousel-controls{margin-top:4px}}@media (max-width: 599px){.hero-carousel-artwork-fill{display:none}.hero-carousel-slide.has-hero-image:not(.has-pwa-hero) .hero-carousel-jatra-image,.hero-carousel-slide.has-hero-image:not(.has-pwa-hero):before{display:none}.hero-carousel-slide.has-artwork:not(.has-pwa-artwork) .hero-carousel-artwork{display:none}.hero-carousel-slide.has-artwork:not(.has-pwa-artwork) .hero-carousel-promo-link{align-items:flex-start}.hero-carousel-promo-fallback{display:flex;flex-direction:column;max-width:100%}.hero-carousel-promo-fallback .eyebrow{margin-bottom:14px}.hero-carousel-promo-title{font:600 clamp(30px,8.5vw,40px)/1.08 "Playfair Display",serif;letter-spacing:-.01em;color:var(--cream)}.hero-carousel-promo-fallback .hero-text{margin:14px 0 0}.hero-carousel-slide.has-pwa-artwork .hero-carousel-promo-link{justify-content:flex-end;padding-top:0}.hero-carousel-slide.has-pwa-artwork .hero-carousel-artwork{position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;height:100%;max-height:none;object-fit:cover;border-radius:0;box-shadow:none}}@media (prefers-reduced-motion: reduce){.hero-carousel-slide,.hero-carousel-slide.is-active,.hero-carousel-slide .hero-copy,.hero-carousel-slide .hero-carousel-promo-cta,.hero-carousel-slide.is-active .hero-copy,.hero-carousel-slide.is-active .hero-carousel-promo-cta{transition:none}}.photo-banner{position:relative;padding:72px var(--gutter) 48px;overflow:hidden;color:var(--cream);background:var(--brand-primary-deep)}.photo-banner:before{content:"";position:absolute;top:-4%;right:-4%;bottom:-4%;left:-4%;background-image:var(--banner-photo);background-size:cover;background-position:center}.photo-banner:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,var(--scrim-primary) 0%,var(--scrim-primary-deep) 100%),radial-gradient(55% 60% at 88% 8%,var(--scrim-gold-26) 0%,transparent 70%),var(--stained-glass-motif);background-size:auto,auto,140px 140px}.photo-banner>*{position:relative;z-index:1}.photo-banner .eyebrow{color:var(--cream)}.photo-banner h1{font:600 clamp(32px,6vw,52px)/1.05 "Playfair Display",serif;margin:6px 0 10px;color:var(--cream)}.photo-banner .banner-subtitle{max-width:600px;margin:0;font-size:var(--text-lg);line-height:1.6;color:var(--cream)}@media (max-width: 640px){.photo-banner{padding:32px var(--gutter) 24px}}.delete-confirm-subject{display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:16px}.delete-confirm-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--status-error-container);color:var(--danger);font-size:var(--text-xl);flex-shrink:0}.delete-confirm-subject div{display:flex;flex-direction:column;gap:2px}.delete-confirm-subject strong{font-size:var(--text-lg)}.delete-confirm-warning{background:var(--status-error-container);color:var(--danger);border-radius:10px;padding:14px 16px;font-size:var(--text-sm);line-height:1.5;margin:0 0 18px}.delete-confirm label{display:block;font-size:var(--text-sm);font-weight:500;color:var(--ink-soft);margin:0 0 6px}.delete-confirm textarea{display:block;width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid var(--border-control);border-radius:var(--radius-sm);font-size:14px;font-family:inherit;margin-bottom:4px;transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}.delete-confirm textarea:hover{border-color:var(--ink-soft)}.delete-confirm textarea:focus-visible{outline:none;border-color:var(--brand-teal);box-shadow:0 0 0 3px var(--focus-ring-glow-soft)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#20242a73;display:flex;align-items:center;justify-content:center;padding:20px;z-index:2000;isolation:isolate;animation:modal-fade .15s var(--ease)}.modal{background:#fff;border-radius:18px;padding:28px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);animation:modal-rise .18s var(--ease)}@media (max-width: 767px){.modal-overlay{padding-top:calc(20px + env(safe-area-inset-top,0px));padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}.modal{max-height:min(90vh,calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 40px))}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.modal-header h2{font:500 22px Playfair Display,serif;margin:0}.modal-close{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--border-strong);background:var(--cream-deep);font-size:var(--text-lg);line-height:1;color:var(--ink);border-radius:50%;flex-shrink:0}.modal-close:hover{background:var(--cream);border-color:var(--ink-soft)}.modal-field{margin:4px 0 16px}.modal-field label{display:block;font-size:var(--text-sm);font-weight:500;color:var(--ink-soft);margin:0 0 6px}.modal-field input,.modal-field textarea{display:block;width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid var(--border-control);border-radius:var(--radius-sm);font-size:14px;font-family:inherit;transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}.modal-field input:hover,.modal-field textarea:hover{border-color:var(--ink-soft)}.modal-field input:focus-visible,.modal-field textarea:focus-visible{outline:none;border-color:var(--brand-teal);box-shadow:0 0 0 3px var(--focus-ring-glow-soft)}.mobile-phone-input{display:grid;grid-template-columns:minmax(140px,.85fr) minmax(0,1.5fr);gap:10px;margin:4px 0 8px}.mobile-phone-input label{display:flex;flex-direction:column;gap:5px}.mobile-phone-input label>span{font-size:var(--text-sm);color:var(--ink-soft)}.mobile-phone-input select,.mobile-phone-input input{width:100%;min-width:0}.otp-code-input{display:grid;grid-template-columns:repeat(6,minmax(38px,1fr));gap:8px;margin:8px 0 12px}@media (max-width: 360px){.modal{padding:22px 18px}.otp-code-input{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.otp-input-container{gap:6px}}.otp-code-input input{min-width:0;height:52px;padding:0;text-align:center;font-size:var(--text-2xl);font-weight:600;border:1px solid var(--border-control);border-radius:var(--radius-sm)}.otp-code-input input:focus{border-color:var(--brand-teal);box-shadow:0 0 0 3px var(--focus-ring-glow-soft);outline:none}.confirm-checklist{margin:12px 0;padding-left:20px;display:grid;gap:6px;color:var(--ink-soft)}.confirm-checklist li::marker{color:var(--brand-teal)}.confirm-footnote{margin:0 0 4px;color:var(--ink-soft);font-size:var(--text-sm)}.image-hover-preview-trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--cream);padding:0;cursor:pointer;overflow:visible}.image-hover-preview-thumb{width:100%;height:100%;object-fit:cover;border-radius:7px}.image-hover-preview-placeholder{font-size:18px}.image-hover-preview-panel{position:absolute;z-index:20;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:6px;pointer-events:none}.image-hover-preview-panel img{display:block;width:220px;height:220px;object-fit:cover;border-radius:var(--radius-sm)}.image-hover-preview-full{display:block;max-width:100%;max-height:70vh;border-radius:var(--radius-md);margin:0 auto}.toast-region{position:fixed;right:16px;bottom:16px;left:16px;z-index:2200;display:flex;flex-direction:column;align-items:stretch;gap:8px;pointer-events:none}@media (min-width: 640px){.toast-region{left:auto;width:380px}}.toast-stack{display:flex;flex-direction:column;gap:8px}.toast-stack:empty{display:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:10px;padding:8px 8px 8px 14px;background:var(--cream);color:var(--ink);border:1px solid var(--line);border-left:4px solid var(--positive);border-radius:var(--radius-md);box-shadow:var(--shadow-md);animation:toast-in .2s var(--ease)}.toast-error{border-left-color:var(--danger)}.toast-icon{display:inline-flex;color:var(--positive);flex:0 0 auto}.toast-error .toast-icon{color:var(--danger)}.toast-message{margin:0;flex:1;font-size:var(--text-md);line-height:1.4;overflow-wrap:anywhere}.toast-dismiss{flex:0 0 auto;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--ink-soft);border-radius:var(--radius-sm)}.toast-dismiss:hover{background:#20242a0f;color:var(--ink)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.toast{animation:none}}:root{--bottom-nav-height: 62px}.bottom-nav{display:none}@media (max-width: 767px){.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;padding:0 4px env(safe-area-inset-bottom);background:var(--cream);border-top:1px solid var(--line);box-shadow:0 -4px 16px #20242a12}.bottom-nav-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:calc(var(--bottom-nav-height) - 1px);padding:4px 2px;color:var(--ink-soft);text-align:center}.bottom-nav-label{font-size:var(--text-xs);line-height:1.15;overflow-wrap:anywhere}.bottom-nav-item.active{color:var(--brand-primary);font-weight:600}.bottom-nav-item.active:before{content:"";position:absolute;top:0;left:28%;right:28%;height:3px;border-radius:0 0 3px 3px;background:var(--brand-primary)}.bottom-nav-item:focus-visible{outline-offset:-3px}body:has(.bottom-nav){padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom))}body:has(.bottom-nav) .tshirt-buy-bar{bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));padding-bottom:12px}body:has(.bottom-nav) .toast-region{bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + 12px)}body:has(.bottom-nav) .hero-carousel-slide.has-hero-image,body:has(.bottom-nav) .hero-carousel-slide.has-artwork{min-height:clamp(400px,calc(100svh - 74px - var(--bottom-nav-height) - 64px - env(safe-area-inset-bottom)),640px)}.header .menu{display:none}body:has(.private-bottom-nav) .admin-nav{display:none}}.private-more-list{display:flex;flex-direction:column}.private-more-link{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;padding:8px 4px;border:0;border-bottom:1px solid var(--line);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.private-more-list>.private-more-link:last-child{border-bottom:0}.private-more-link[aria-current=page]{color:var(--brand-primary);font-weight:600}.install-prompt{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:60;display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:12px;padding:14px 40px 14px 14px;max-height:calc(100dvh - 24px);overflow-y:auto;background:#fff;border:1px solid var(--border, #e5ddd2);border-radius:14px;box-shadow:0 8px 28px #26374638;animation:install-prompt-in .24s ease-out}.install-prompt-icon{width:56px;height:56px;border-radius:12px}.install-prompt-body{min-width:0}.install-prompt-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px}.install-prompt-title{margin:0;font-weight:700;font-size:16px;color:var(--text-primary, #263746)}.install-prompt-text{margin:2px 0 0;font-size:14px;line-height:1.4;color:var(--text-secondary, #6b625b)}.install-prompt-install,.install-prompt-primary{flex:1 1 auto;max-width:100%;min-height:48px;padding:12px 20px;border:none;border-radius:10px;background:var(--brand-primary, #7b1e2b);color:#fff;font-size:16px;font-weight:700;cursor:pointer}.install-prompt-install:disabled{opacity:.6;cursor:wait}a.install-prompt-install{display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none}.install-prompt-continue{flex:0 1 auto;max-width:100%;text-align:left;background:none;border:none;padding:10px 4px;color:var(--brand-primary, #7b1e2b);font-size:14px;font-weight:600;text-decoration:underline;cursor:pointer}.install-prompt-continue.install-prompt-primary{padding:12px 20px;background:var(--brand-primary, #7b1e2b);color:#fff;font-size:16px;font-weight:700;text-decoration:none;text-align:center}.install-prompt-close{position:absolute;top:4px;right:8px;width:32px;height:32px;background:none;border:none;font-size:22px;line-height:1;color:var(--text-secondary, #6b625b);cursor:pointer}@keyframes install-prompt-in{0%{transform:translateY(16px);opacity:0}to{transform:none;opacity:1}}@media (prefers-reduced-motion: reduce){.install-prompt{animation:none}}@media (max-width: 767px){body:has(.bottom-nav) .install-prompt{bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px) + 12px);max-height:calc(100dvh - var(--bottom-nav-height) - env(safe-area-inset-bottom,0px) - var(--header-height, 74px) - 24px)}}@media (min-width: 700px){.install-prompt{left:auto;right:24px;bottom:24px;max-width:420px}}@media (max-width: 860px){body:has(.tshirt-buy-bar) .install-prompt{bottom:calc(92px + env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 80px - env(safe-area-inset-bottom,0px) - var(--header-height, 74px) - 24px)}}@media (max-width: 767px){body:has(.bottom-nav):has(.tshirt-buy-bar) .install-prompt{bottom:calc(var(--bottom-nav-height) + 80px + env(safe-area-inset-bottom,0px) + 12px);max-height:calc(100dvh - var(--bottom-nav-height) - 80px - env(safe-area-inset-bottom,0px) - var(--header-height, 74px) - 24px)}}.offline-banner{position:fixed;left:0;right:0;margin:0 auto;width:fit-content;bottom:calc(16px + env(safe-area-inset-bottom));z-index:1500;display:flex;align-items:center;gap:12px;max-width:calc(100vw - 32px);padding:8px 8px 8px 16px;border-radius:var(--radius-pill);background:var(--ink);color:#fff;font-size:var(--text-sm);font-weight:600;box-shadow:var(--shadow-md)}.offline-banner button{flex:0 0 auto;min-height:36px;padding:6px 14px;border:0;border-radius:var(--radius-pill);background:#fff;color:var(--ink);font:inherit;cursor:pointer}.offline-banner button:focus-visible{outline:2px solid #fff;outline-offset:2px}@media (max-width: 767px){body:has(.bottom-nav) .offline-banner{bottom:calc(var(--bottom-nav-height) + 12px + env(safe-area-inset-bottom))}}.intro-band{position:relative;overflow:hidden;padding:40px var(--gutter);display:flex;flex-direction:column;gap:24px;background:var(--brand-primary);color:var(--cream)}.intro-band:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(55% 70% at 92% 15%,var(--scrim-gold-16) 0%,transparent 70%),repeating-linear-gradient(55deg,var(--scrim-gold-05) 0 2px,transparent 2px 46px),repeating-linear-gradient(-35deg,var(--scrim-primary-deep-faint) 0 2px,transparent 2px 52px)}.intro-band>*{position:relative;z-index:1}.intro-band .eyebrow{color:var(--gold-light)}.intro-band h2,.section-heading h2{font:500 clamp(28px,3.4vw,38px)/1.15 "Playfair Display",serif;margin:0 0 8px}.section-heading:not(.row) h2:after,.placeholder h2:after,.history-article h2:after{content:"";display:block;width:56px;height:2px;margin-top:14px;border-radius:2px;background:linear-gradient(90deg,var(--brand-burgundy) 0%,var(--gold) 100%)}.intro-band h2:after{content:"";display:block;width:56px;height:2px;margin-top:14px;border-radius:2px;background:linear-gradient(90deg,var(--gold-light) 0%,var(--gold) 100%)}.muted{color:var(--muted);font-size:var(--text-md)}.intro-band .muted{color:var(--muted-on-dark);font-size:15px}.date-box{border-top:1px solid var(--divider-on-dark);padding-top:20px}.date-box span,.date-box small{display:block;color:var(--muted-on-dark);font-size:12px}.date-box strong{display:block;font:600 26px/1.25 var(--font-body);font-variant-numeric:lining-nums tabular-nums;margin:6px 0}.quick,.columns{padding:64px var(--gutter)}.section-heading{margin-bottom:28px}.section-heading h2{color:var(--brand-primary)}.section-heading.row{display:flex;justify-content:space-between;align-items:end;gap:12px;flex-wrap:wrap}.section-heading.row a{font-size:12px;color:var(--brand-teal);white-space:nowrap}.quick-grid{display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid var(--line)}.quick-link{display:grid;grid-template-columns:30px 1fr 20px;align-items:center;padding:20px 10px;border-bottom:1px solid var(--line);font-size:15px;transition:background-color .15s var(--ease),transform .15s var(--ease)}.quick-link:hover{background:var(--cream-deep);transform:translate(4px)}.quick-link b{color:var(--brand-teal);font-weight:400}.quick-icon{color:var(--brand-burgundy);font-size:var(--text-xl)}@media (min-width: 481px){.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 700px){.intro-band{flex-direction:row;justify-content:space-between;align-items:center}.date-box{border-top:0;border-left:1px solid var(--divider-on-dark);padding:0 0 0 32px;min-width:240px}}@media (min-width: 1024px){.quick-grid{grid-template-columns:repeat(4,1fr)}}.home-shortcuts{display:none}@media (max-width: 767px){.home-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px var(--gutter) 4px}.home-shortcut{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:88px;padding:12px 6px;text-align:center;background:var(--surface-primary);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);color:var(--ink)}.home-shortcut-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--cream-deep);color:var(--brand-primary)}.home-shortcut-label{font-size:var(--text-sm);font-weight:600;line-height:1.25;overflow-wrap:anywhere}.home-shortcut:active{background:var(--cream-deep)}.home-shortcut:focus-visible{outline-offset:2px}}.countdown{position:relative;z-index:1;background:radial-gradient(65% 65% at 90% 100%,var(--scrim-gold-24) 0%,transparent 70%),linear-gradient(160deg,var(--brand-primary),var(--brand-primary-deep) 65%);color:var(--cream);border-radius:var(--radius-xl);padding:34px 34px 30px;align-self:flex-start;min-width:300px;box-shadow:var(--shadow-lg);border:1px solid var(--scrim-gold-30)}.countdown .eyebrow{color:var(--gold-light);margin-bottom:14px;font-size:var(--text-xs)}.countdown strong{font:italic 28px Playfair Display,serif}.countdown-grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.countdown-grid>div{padding:0 6px;position:relative}.countdown-grid>div:not(:last-child):after{content:"";position:absolute;right:0;top:4px;bottom:4px;width:1px;background:#f7f4ec29}.countdown-grid strong{display:block;font:600 36px/1 Playfair Display,serif;font-style:normal}.countdown-grid span{display:block;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--muted-on-dark);margin-top:8px}.countdown-live strong{color:#9fd8a0}.countdown-ended strong{color:var(--muted-on-dark)}.live-status{padding:0 var(--gutter) 64px}.live-status h2{font:500 24px Playfair Display,serif;margin:0 0 18px}.live-status dl{display:grid;gap:14px;margin:0}.live-status dl>div{display:flex;gap:10px;border-top:1px solid var(--line);padding-top:12px}.live-status dt{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--brand-teal);min-width:96px}.live-status dd{margin:0;font-size:15px;min-width:0;overflow-wrap:anywhere}.columns{display:grid;grid-template-columns:minmax(0,1fr);gap:48px;padding-top:0}.home-announcements,.home-upcoming-program{min-width:0;min-height:420px}.home-announcement-list,.home-upcoming-list{min-width:0;overflow-wrap:anywhere}.home-announcement-list{max-height:420px;overflow-y:auto;padding-right:8px}.announcement,.event{border-top:1px solid var(--line);padding:18px 0;overflow-wrap:anywhere;min-width:0}.event{display:flex;border-radius:var(--radius-md);transition:background-color .15s var(--ease),transform .15s var(--ease)}.event:hover{background:var(--cream-deep);transform:translate(6px)}.event-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.announcement-meta{display:flex;align-items:center;gap:10px}.announcement .date,.event time{font-size:var(--text-xs);color:var(--brand-teal);text-transform:uppercase;letter-spacing:.1em}.announcement h3,.event h3{font:500 21px Playfair Display,serif;margin:8px 0}.announcement p,.event p{font-size:var(--text-md);color:var(--muted);margin:0 0 10px;line-height:1.55}.event{gap:20px;padding-left:4px}.event time{display:flex;flex-direction:column;min-width:64px;margin-top:4px}.event-time{font-size:12px;color:var(--muted);text-transform:none;letter-spacing:0;margin-top:2px}.event-organizer{font-size:12px;color:var(--ink-soft)}@media (min-width: 700px){.columns{grid-template-columns:1fr 1fr;gap:60px}}.bishops-band{padding:64px var(--gutter);background:var(--cream-deep)}.bishops-band-inner{display:grid;grid-template-columns:1fr;gap:32px;align-items:center;max-width:1100px;margin:0 auto;text-align:center}.bishops-copy h2{color:var(--brand-primary);font:500 clamp(28px,3.4vw,38px)/1.15 "Playfair Display",serif;margin:0 0 8px}.bishops-copy h2:after{content:"";display:block;width:56px;height:2px;margin:14px auto 0;border-radius:2px;background:linear-gradient(90deg,var(--brand-burgundy) 0%,var(--gold) 100%)}.bishops-body{color:var(--ink-soft);font-size:var(--text-lg);line-height:1.6;margin:18px auto 0;max-width:60ch}.bishops-conferences{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:24px 0 0;padding:0}.bishops-conferences li{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 20px;background:var(--surface-primary);border:1px solid var(--line);border-radius:var(--radius-pill);box-shadow:var(--shadow-sm)}.bishops-conference-name{color:var(--brand-primary);font-weight:600;font-size:var(--text-sm);letter-spacing:.06em}.bishops-conference-full{color:var(--muted);font-size:12px}.bishops-portrait{margin:0}.bishops-portrait-img{display:block;width:100%;height:auto;aspect-ratio:4 / 5;object-fit:cover;object-position:center 18%;border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--surface-secondary);box-shadow:var(--shadow-sm)}.bishops-portrait-img.is-custom{aspect-ratio:auto;object-fit:contain}@media (min-width: 700px){.bishops-band-inner{gap:40px}}@media (min-width: 700px) and (max-width: 1023px){.bishops-portrait{justify-self:center;width:200px}}@media (min-width: 700px) and (max-width: 1023px){.bishops-portrait:has(.is-custom){width:340px}}@media (min-width: 1024px){.bishops-band-inner{grid-template-columns:minmax(0,200px) minmax(0,1fr) minmax(0,200px)}.bishops-band-inner:has(>.bishops-portrait:first-child .is-custom){grid-template-columns:minmax(0,320px) minmax(0,1fr) minmax(0,200px)}.bishops-band-inner:has(>.bishops-portrait:last-child .is-custom){grid-template-columns:minmax(0,200px) minmax(0,1fr) minmax(0,320px)}.bishops-band-inner:has(>.bishops-portrait:first-child .is-custom):has(>.bishops-portrait:last-child .is-custom){grid-template-columns:minmax(0,320px) minmax(0,1fr) minmax(0,320px)}}.about-preview,.history-preview{padding:64px var(--gutter)}.about-preview{background:var(--cream)}.about-preview-grid{display:grid;grid-template-columns:1fr;gap:28px;align-items:center;max-width:1100px}.about-photo{width:100%;height:280px;object-fit:cover;border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.about-preview p{color:var(--ink-soft);margin:18px 0 22px;font-size:var(--text-lg);line-height:1.6}.history-preview{background:var(--heritage-champagne);display:grid;gap:32px;align-items:center}.history-text{display:grid;gap:24px}.history-preview h2{font-size:clamp(30px,4vw,40px);margin:0 0 20px}.history-preview .story-number{color:var(--brand-burgundy);font-size:var(--text-sm);letter-spacing:.08em}.history-photo{width:100%;height:260px;object-fit:cover;border-radius:var(--radius-lg);border:1px solid rgba(32,36,42,.12);box-shadow:var(--shadow-sm)}.timeline{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-wrap:wrap;gap:8px 4px;font-size:var(--text-sm);color:var(--ink)}.timeline li:not(:last-child):after{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;margin-left:8px;background:var(--gold)}.timeline-note{font-size:var(--text-sm);color:var(--ink);margin:0 0 14px}.history-article{padding:8px var(--gutter) 40px;max-width:760px;margin:0 auto}.history-article h2{font:500 26px Playfair Display,serif;margin:0 0 16px}.history-article p{color:var(--ink-soft);margin:0 0 18px;font-size:var(--text-lg);line-height:1.65}@media (min-width: 700px){.about-preview-grid{grid-template-columns:1fr 1.2fr;gap:48px}.about-photo{height:340px}.history-preview{grid-template-columns:1.1fr 1fr}.history-text{grid-template-columns:60px 1fr;align-items:center}}.about-preview-grid.is-text-only,.history-preview.is-text-only{grid-template-columns:1fr}@media (max-width: 1023px){.bishops-portrait.is-empty{display:none}}.camping-tent-cta{max-width:760px;margin:24px auto 40px;padding:28px var(--gutter);display:flex;flex-direction:column;gap:20px;align-items:center;background:var(--heritage-champagne);border-radius:var(--radius-card)}.camping-tent-cta-illustration{width:220px;height:140px;object-fit:cover;flex-shrink:0;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.camping-tent-cta h2{margin:4px 0 10px;font:500 24px Playfair Display,serif}.camping-tent-cta p{margin:0 0 16px;color:var(--ink);line-height:1.6}@media (min-width: 640px){.camping-tent-cta{flex-direction:row;text-align:left;padding:32px 40px}.camping-tent-cta-illustration{width:260px;height:170px}}.history-tagline{font:500 22px Playfair Display,serif;color:var(--ink);font-style:italic;margin:6px 0 22px}.history-figure{display:flex;flex-direction:column;gap:20px;align-items:center;text-align:center;margin:8px var(--gutter) 40px;padding:28px;max-width:760px;background:var(--heritage-champagne);border-radius:var(--radius-lg)}.history-figure img{width:140px;height:140px;object-fit:cover;border-radius:50%;border:3px solid #fff;box-shadow:var(--shadow-md)}.history-figure-name{font:600 18px Playfair Display,serif;margin:0 0 6px;color:var(--ink)}.history-figure-role{margin:0;font-size:var(--text-md);color:var(--ink);line-height:1.55}@media (min-width: 700px){.history-figure{flex-direction:row;text-align:left}.history-figure img{width:120px;height:120px;flex-shrink:0}}.experience{padding:64px var(--gutter)}.experience-grid{display:grid;grid-template-columns:1fr;gap:16px}.experience-card,.visit-card,.role-card,.admin-card,.emergency-card,.vendor-card{position:relative;background:radial-gradient(130% 160% at 15% -10%,#ffffff 0%,var(--cream) 55%,var(--cream-deep) 100%)}.experience-card,.visit-card,.emergency-card{background-image:var(--parchment-texture),radial-gradient(130% 160% at 15% -10%,#ffffff 0%,var(--cream) 55%,var(--cream-deep) 100%);background-blend-mode:multiply,normal}.experience-card:before,.visit-card:before,.role-card:before,.admin-card:before,.emergency-card:before,.vendor-card:before{content:"";position:absolute;top:0;left:16px;right:16px;height:2px;border-radius:0 0 2px 2px;background:linear-gradient(90deg,transparent,var(--gold) 50%,transparent);opacity:.6}.experience-card{border:1px solid var(--line);border-radius:var(--radius-card);padding:26px;box-shadow:inset 0 1px #fffc,var(--shadow-sm);transition:transform var(--duration-slow) var(--ease-slow),box-shadow var(--duration-slow) var(--ease-slow)}.experience-card:hover{transform:translateY(-3px);box-shadow:inset 0 1px #fffc,var(--shadow-md)}.experience-card h3{margin:0 0 10px;font-size:var(--text-xl)}.experience-card p{margin:0;font-size:var(--text-md);color:var(--muted);line-height:1.55}@media (min-width: 700px){.experience-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.experience-grid{grid-template-columns:repeat(5,1fr)}}.prayer-cta{position:relative;overflow:hidden;padding:64px var(--gutter);text-align:center;background:var(--brand-primary);color:var(--cream)}.prayer-cta:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(70% 80% at 50% 100%,var(--scrim-gold-16) 0%,transparent 70%),repeating-linear-gradient(55deg,var(--scrim-gold-05) 0 2px,transparent 2px 46px),repeating-linear-gradient(-35deg,var(--scrim-primary-deep-faint) 0 2px,transparent 2px 52px)}.prayer-cta>*{position:relative;z-index:1}.prayer-cta .eyebrow{color:var(--gold-light)}.prayer-cta h2{margin:0 0 14px;font-size:clamp(28px,3.6vw,40px)}.prayer-cta h2:after{content:"✝";display:block;margin-top:4px;color:var(--gold-light);font-size:15px}@keyframes scripture-reveal{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.photo-banner h1{animation:scripture-reveal 1s var(--ease-slow) both}@supports (animation-timeline: view()){.intro-band h2,.prayer-cta h2,.history-tagline{animation:scripture-reveal 1s var(--ease-slow) both;animation-timeline:view();animation-range:entry 0% cover 30%}}@media (prefers-reduced-motion: reduce){.photo-banner h1,.intro-band h2,.prayer-cta h2,.history-tagline{animation:none}}.prayer-cta p{color:var(--muted-on-dark);max-width:460px;margin:0 auto 26px;font-size:var(--text-lg);line-height:1.6}.prayer-cta .hero-actions{justify-content:center}.prayer-cta .button.secondary{border-color:var(--divider-on-dark);color:var(--cream)}.prayer-cta .button.secondary:hover:not(:disabled){border-color:var(--cream);color:var(--cream)}.map-view{border:1px solid var(--line);border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-sm);height:360px;margin-bottom:24px}.map-view-compact{height:220px}.map-view-page-size{height:80vh;min-height:560px;max-height:820px;margin-bottom:0;border-left:0;border-right:0;border-radius:0;box-shadow:none}.map-view-container{height:100%;width:100%}.venue-location-picker{margin:4px 0 16px}.venue-location-picker-map{height:260px;width:100%;border:1px solid var(--line);border-radius:10px;overflow:hidden}.venue-location-picker .muted{margin:8px 0 0;font-size:var(--text-sm)}.map-category-marker{background:transparent;border:0}.map-category-marker span{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:2px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--brand-burgundy);color:#fff;box-shadow:0 2px 5px #20242a4d;font-size:var(--text-md);font-weight:600}.map-category-marker span b{transform:rotate(45deg);font-weight:600}.map-toolbar{padding:24px var(--gutter) 16px}.map-locate-control button{width:44px;height:44px;border:0;background:#fff;font-size:var(--text-lg);line-height:1;cursor:pointer;color:var(--ink)}.map-locate-control button:disabled{color:var(--muted);cursor:default}.map-base-layer-control{display:flex;overflow:hidden}.map-base-layer-control button{border:0;background:#fff;padding:8px 14px;min-height:44px;font-size:var(--text-sm);font-weight:500;cursor:pointer;color:var(--ink-soft)}.map-base-layer-control button.active{background:var(--brand-teal);color:var(--cream)}.map-base-layer-control button:not(:last-child){border-right:1px solid var(--line)}.map-private-marker span{display:block;width:14px;height:14px;border-radius:50%;background:var(--positive);border:2px solid #fff;box-shadow:0 0 0 2px #20242a2e}.map-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.map-list-item{border-top:1px solid var(--line);padding:16px 0 16px 4px;margin-left:-4px;border-radius:var(--radius-sm);transition:background-color var(--duration-slow) var(--ease-slow),transform var(--duration-slow) var(--ease-slow)}.map-list-item:hover{background:var(--cream-deep);transform:translate(10px)}.map-list-item h3{margin:0 0 4px;font:500 18px Playfair Display,serif}.map-list-item p{margin:0 0 8px;color:var(--muted);font-size:var(--text-md)}.map-list-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.map-layer-toggles{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.map-layer-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;min-height:44px;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:#fff;font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:border-color .15s var(--ease),background-color .15s var(--ease)}.map-layer-chip:has(input:checked){border-color:var(--brand-teal);background:var(--cream)}.map-layer-chip input{accent-color:var(--brand-teal)}.map-boundary-note{margin:0 0 16px}.hero-tent-invite{text-align:center;max-width:640px;margin:0 auto;position:relative;z-index:1}.hero-tent-invite h2{margin:0 0 6px;color:var(--cream);font:500 clamp(24px,3vw,34px)/1.2 "Playfair Display",serif}.hero-tent-invite p{margin:0;color:var(--gold-light);font-size:var(--text-lg)}.tent-widget{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-lg);padding:22px 26px;display:flex;flex-direction:column;gap:18px;text-align:left;position:relative;z-index:1}.tent-widget-home{max-width:800px;margin:0 auto}.tent-widget-page{max-width:860px;padding:32px 36px;gap:24px}.tent-widget-empty,.tent-widget-confirmed{background:var(--cream);border-radius:var(--radius-card);box-shadow:var(--shadow-lg);max-width:720px;margin:0 auto;position:relative;z-index:1}.book-a-tent-banner{background:var(--cream)}.book-a-tent-banner-frame{position:relative;max-width:560px;margin:0 auto;line-height:0}.book-a-tent-banner picture{display:block}.book-a-tent-banner img{display:block;width:100%;height:auto}.book-a-tent-banner-cta{position:absolute;left:6%;bottom:4%;line-height:1.2;display:inline-flex;align-items:center;gap:8px}@media (min-width: 900px){.book-a-tent-banner-frame{max-width:none;padding-bottom:68px}.book-a-tent-banner-cta{left:auto;right:var(--gutter);bottom:12px}}@media (min-width: 1700px){.book-a-tent-banner-frame{padding-bottom:0}.book-a-tent-banner-cta{right:2.4%;bottom:7.5%}}.book-a-tent-eyebrow{color:var(--brand-gold-dark)}.book-a-tent-booking{padding:48px 0 56px;background:linear-gradient(180deg,var(--cream) 0%,var(--heritage-champagne) 100%);scroll-margin-top:90px}@media (min-width: 768px){.book-a-tent-booking{scroll-margin-top:98px}}.book-a-tent-booking-head{max-width:760px;margin:0 auto;padding:0 var(--gutter);text-align:center}.book-a-tent-booking-head h1{margin:6px 0 12px;font:600 clamp(28px,4.4vw,44px)/1.12 "Playfair Display",serif;color:var(--brand-primary)}.book-a-tent-widget-wrap{max-width:1200px;margin:0 auto;padding:20px var(--gutter) 0}.tent-widget-loading-page{display:flex;flex-direction:column;justify-content:center;min-height:626px}@media (min-width: 768px){.tent-widget-loading-page{min-height:555px}}@media (min-width: 960px){.tent-widget-loading-page{min-height:400px}}.book-a-tent-booking .tent-widget-page{border-top:3px solid var(--gold)}.book-a-tent-how-it-works{max-width:1040px;margin:56px auto 48px;padding:0 var(--gutter);text-align:center}.book-a-tent-how-it-works h2,.book-a-tent-benefits h2{font:600 clamp(24px,3vw,30px)/1.2 "Playfair Display",serif;margin:0 0 28px;color:var(--brand-primary)}.book-a-tent-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:28px;position:relative}.book-a-tent-step{position:relative;text-align:center;padding:0 8px}.book-a-tent-step-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;margin-bottom:14px;border-radius:50%;background:var(--cream);color:var(--brand-primary);box-shadow:0 0 0 2px var(--gold),0 0 0 7px var(--heritage-champagne),var(--shadow-sm)}.book-a-tent-step-number{position:absolute;top:-4px;right:-6px;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--brand-primary);color:var(--cream);font-size:13px;font-weight:700}.book-a-tent-step h3{margin:0 0 6px;font:600 18px Playfair Display,serif;color:var(--ink)}.book-a-tent-step p{margin:0 auto;max-width:240px;color:var(--muted);font-size:var(--text-sm);line-height:1.55}@media (min-width: 760px){.book-a-tent-steps{grid-template-columns:repeat(4,1fr);gap:20px}.book-a-tent-steps:before{content:"";position:absolute;top:36px;left:12.5%;right:12.5%;border-top:2px dashed var(--gold);opacity:.55}}.book-a-tent-benefits{max-width:1040px;margin:0 auto 48px;padding:28px var(--gutter);display:grid;grid-template-columns:1fr;gap:24px;align-items:center;background:var(--heritage-champagne);border-radius:var(--radius-card)}.book-a-tent-benefits-art{position:relative;border-radius:var(--radius-card);overflow:hidden;aspect-ratio:4 / 3;background:radial-gradient(28% 22% at 82% 20%,#fff4d2,#fff4d200 70%),linear-gradient(180deg,#cfe8f7,#eaf5fb 56%,#8fc08a 56.5%,#6faa6c 64%,#5e9e50);box-shadow:var(--shadow-sm)}.book-a-tent-benefits-art:after{content:"";position:absolute;left:12%;right:12%;bottom:9%;height:8%;border-radius:50%;background:radial-gradient(closest-side,#1430166b,#14301600)}.book-a-tent-benefits-art img{position:absolute;left:50%;bottom:11%;width:62%;height:auto;transform:translate(-50%);z-index:1}.book-a-tent-benefits-copy{text-align:left}.book-a-tent-benefits-copy h2{margin-bottom:18px}.book-a-tent-benefits ul{list-style:none;margin:0;padding:0;display:grid;gap:14px}.book-a-tent-benefits li{display:flex;gap:12px;align-items:flex-start;color:var(--ink);line-height:1.55}.book-a-tent-check{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin-top:1px;border-radius:50%;background:var(--brand-primary);color:var(--cream)}@media (min-width: 760px){.book-a-tent-benefits{grid-template-columns:1fr 1.1fr;gap:40px;padding:36px 40px}}.book-a-tent-closing-cta{max-width:1040px;margin:0 auto 64px;padding:44px var(--gutter);text-align:center;background:radial-gradient(60% 80% at 50% 0%,#d6bd7a29,#d6bd7a00 70%),var(--brand-primary-deep);border-radius:var(--radius-card);border-top:3px solid var(--gold);color:var(--cream)}.book-a-tent-closing-icon{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;margin-bottom:12px;border-radius:50%;color:var(--gold-light);box-shadow:0 0 0 1.5px var(--gold-light)}.book-a-tent-closing-cta h2{margin:0 0 10px;font:600 clamp(24px,3vw,30px)/1.2 "Playfair Display",serif;color:var(--cream)}.book-a-tent-closing-cta p{margin:0 auto 24px;max-width:560px;color:var(--muted-on-dark);line-height:1.6}.tent-widget-inputs{display:flex;flex-direction:column;gap:14px}.tent-widget-dates-row,.tent-widget-occupancy-row{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end}.tent-widget-date{display:flex;flex-direction:column;gap:6px;font-size:var(--text-sm);color:var(--ink-soft);flex:1 1 130px}.tent-widget-mobile{display:flex;flex-direction:column;gap:6px;font-size:var(--text-sm);color:var(--ink-soft);flex:1 1 110px;min-width:0}.tent-widget-date input,.tent-widget-mobile input{padding:11px 12px;border:1px solid var(--border-control);border-radius:var(--radius-sm);font-size:var(--text-md);color:var(--ink);background:#fff;min-height:44px;width:100%;box-sizing:border-box}.tent-widget-account{flex:1 1 130px;line-height:1.4}.tent-widget-account strong{color:var(--ink)}.tent-stepper{display:flex;flex-direction:column;gap:6px;flex:0 0 auto}.tent-stepper-label{font-size:var(--text-sm);color:var(--ink-soft)}.tent-stepper-controls{display:flex;align-items:center;gap:10px}.tent-stepper-controls output{min-width:20px;text-align:center;font-size:var(--text-lg);font-weight:600;color:var(--ink)}.tent-stepper-button{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--border-strong);background:#fff;color:var(--brand-teal);font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .15s var(--ease),border-color .15s var(--ease);flex:0 0 44px}.tent-stepper-button:hover:not(:disabled){border-color:var(--brand-teal);background:var(--cream-deep)}.tent-stepper-button:disabled{opacity:.45;cursor:not-allowed}.tent-widget-pay{width:100%;justify-content:center;white-space:nowrap}.tent-widget-hint{color:var(--ink-soft);font-size:var(--text-sm);margin:0}.tent-widget-result{border-top:1px solid var(--line);padding-top:16px;transition:opacity .2s var(--ease)}.tent-widget-result:empty{display:none}.tent-widget-result.is-refreshing{opacity:.55}.tent-result-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.tent-result-tent{display:flex;align-items:center;gap:14px;flex:1 1 260px}.tent-result-image{width:84px;height:64px;object-fit:cover;border-radius:var(--radius-md);flex:0 0 auto;box-shadow:var(--shadow-sm)}.tent-result-label{display:block;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.tent-result-name{display:block;font:600 18px Playfair Display,serif;color:var(--ink);margin:2px 0}.tent-result-meta{display:block;font-size:var(--text-sm);color:var(--ink-soft)}.tent-result-figure{display:flex;flex-direction:column;padding-left:20px;border-left:1px solid var(--line);flex:0 1 auto}.tent-result-figure strong{font:600 20px Playfair Display,serif;color:var(--ink)}.tent-result-figure span{font-size:var(--text-xs);color:var(--muted);margin-top:2px;line-height:1.4}.tent-result-price strong{color:var(--brand-burgundy)}.tent-breakdown-toggle{background:none;border:0;padding:0;margin-left:2px;font-size:var(--text-xs);color:var(--brand-teal);text-decoration:underline;cursor:pointer}.tent-result-soldout{flex-basis:100%;margin:0}.tent-price-breakdown{margin:12px 0 0;padding-top:12px;border-top:1px dashed var(--line)}.tent-price-breakdown>div{display:flex;align-items:baseline;justify-content:space-between;padding:4px 0;gap:12px}.tent-price-breakdown dt{color:var(--ink-soft);font-size:var(--text-sm);margin:0}.tent-price-breakdown dd{margin:0;font-weight:600;color:var(--ink);text-align:right}.tent-widget-confirmed{padding:32px;text-align:center;gap:16px;align-items:center;display:flex;flex-direction:column}.tent-widget-confirmed h3{margin:0;font:600 24px Playfair Display,serif}.tent-widget-confirmed p{margin:0;color:var(--ink-soft);max-width:480px}.tent-widget-empty{padding:24px 28px}.tent-my-booking-page{display:flex;flex-direction:column;gap:20px}.tent-my-booking-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}.tent-my-booking-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;gap:18px;padding:18px;align-items:flex-start}.tent-my-booking-image{width:140px;height:105px;object-fit:cover;border-radius:var(--radius-sm);flex:0 0 auto;box-shadow:var(--shadow-sm)}.tent-my-booking-body{flex:1 1 auto;min-width:0}.tent-my-booking-body h3{margin:0 0 6px;font-size:17px}.tent-my-booking-body p{margin:0 0 8px;font-size:var(--text-md);color:var(--muted);line-height:1.5}.tent-terms-card{background:linear-gradient(165deg,var(--cream-deep),var(--cream));border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:22px 24px;display:flex;gap:16px;align-items:flex-start}.tent-terms-card-icon{width:40px;height:40px;border-radius:50%;background:#fff;color:var(--brand-burgundy);display:flex;align-items:center;justify-content:center;flex:0 0 auto;box-shadow:var(--shadow-sm)}.tent-terms-card-body{flex:1 1 auto;min-width:0}.tent-terms-card-body h2{margin:0 0 8px;font-size:18px}.tent-terms-teaser{margin:0 0 12px;color:var(--ink-soft);line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tent-terms-read-more{background:none;border:0;padding:0;display:inline-flex;align-items:center;gap:6px;color:var(--brand-teal);font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:gap .15s var(--ease)}.tent-terms-read-more:hover{gap:10px}.modal-terms{max-width:720px;text-align:left}.modal-terms .tent-terms-body{max-height:60vh;overflow-y:auto;padding-right:4px}.tent-terms-meta{margin:0 0 16px;font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.tent-terms-body h3{margin:20px 0 8px;font:600 16px Playfair Display,serif;color:var(--brand-primary)}.tent-terms-body h3:first-child{margin-top:0}.tent-terms-body p{margin:0 0 8px;color:var(--ink-soft);line-height:1.6;font-size:var(--text-sm)}.tent-terms-admin-view{background:#fff;border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:28px 30px;max-width:720px}.tent-terms-admin-view .admin-form-actions{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.tent-admin-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:20px 0 24px;overflow-x:auto;scrollbar-width:none}.tent-admin-tabs::-webkit-scrollbar{display:none}.tent-admin-tabs a{padding:10px 16px;font-size:var(--text-sm);font-weight:600;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap;transition:color .15s var(--ease),border-color .15s var(--ease)}.tent-admin-tabs a:hover{color:var(--ink)}.tent-admin-tabs a.active{color:var(--brand-teal);border-bottom-color:var(--brand-teal)}.tent-admin-page .muted{font-size:15px}.tent-admin-page .tent-admin-tabs a{font-size:14px}.tent-admin-page .admin-list-item h3{font-size:18px}.tent-admin-page .admin-list-item p,.tent-admin-page .admin-list-meta .muted{font-size:15px}.tent-admin-page .tent-terms-card-body h2{font-size:19px}.tent-admin-page .tent-terms-teaser,.tent-admin-page .tent-terms-body p{font-size:15px}.tent-admin-page .tent-terms-body h3{font-size:17px}.tent-admin-page .tent-terms-form label{font-size:14px}.tent-admin-page .tent-terms-form textarea{font-size:15px}.tent-unit-mismatch{color:var(--warning);font-weight:600;font-size:15px}.tent-unit-mismatch-note{margin:6px 0 0;font-size:13px;color:var(--warning)}.tent-unit-mismatch-note a{color:inherit;text-decoration:underline}@media (max-width: 767px){.tent-widget-dates-row,.tent-widget-occupancy-row{flex-direction:column;align-items:stretch}.tent-widget-date,.tent-widget-mobile,.tent-widget-account{flex:1 1 auto}.tent-stepper-controls{justify-content:space-between}.tent-widget-pay{width:100%}.tent-result-row{flex-direction:column;align-items:stretch}.tent-result-tent{flex:1 1 auto}.tent-result-figure{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:12px;flex-direction:row;align-items:baseline;justify-content:space-between}.tent-my-booking-card{flex-direction:column}.tent-my-booking-image{width:100%;height:160px}.tent-breakdown-toggle{position:relative}.tent-breakdown-toggle:after{content:"";position:absolute;top:-14px;right:-4px;bottom:-14px;left:-4px}}.tent-widget-page{max-width:none;padding:24px 28px;gap:16px}.tent-widget-page .tent-widget-inputs{gap:12px}.tent-widget-page .tent-widget-result{padding-top:14px}.tent-availability-summary{display:flex;align-items:center;gap:10px;margin:0;padding:10px 14px;min-height:42px;border-radius:var(--radius-sm);background:var(--status-success-container);color:var(--ink);font-size:var(--text-sm);line-height:1.4;overflow-wrap:anywhere}.tent-availability-summary.is-sold-out{background:var(--status-error-container)}.tent-availability-summary-icon{flex:0 0 22px;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--positive);color:#fff;font-size:12px;font-weight:700}.tent-availability-summary.is-sold-out .tent-availability-summary-icon{background:var(--danger)}.tent-availability-panel{display:flex;flex-direction:column;gap:10px;min-width:0;padding:18px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;overflow-wrap:anywhere}.tent-availability-eyebrow{margin:0;font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-gold-dark)}.tent-availability-tent{margin:0;font-size:var(--text-sm);color:var(--ink-soft)}.tent-availability-count{margin:0;display:flex;flex-direction:column;gap:4px}.tent-availability-count strong{font:600 20px/1.25 Playfair Display,serif;color:var(--ink)}.tent-availability-soldout{font-size:var(--text-sm);font-weight:600;color:var(--danger)}.tent-availability-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;transition:opacity .2s var(--ease)}.tent-availability-panel.is-refreshing .tent-availability-grid{opacity:.55}.tent-availability-box{display:flex;align-items:center;justify-content:center;aspect-ratio:1;min-width:0;border-radius:4px;color:#fff;font-size:11px;font-weight:700;line-height:1;-webkit-user-select:none;user-select:none}.tent-availability-box.is-available{background:var(--positive)}.tent-availability-box.is-booked{background:var(--danger)}.tent-availability-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:var(--text-xs);color:var(--ink-soft)}.tent-availability-legend li{display:flex;align-items:center;gap:6px}.tent-availability-legend .tent-availability-box{width:16px;height:16px;flex:0 0 16px;font-size:10px}.tent-availability-note{margin:0;font-size:var(--text-xs);line-height:1.5;color:var(--ink-soft)}.tent-availability-message{margin:0;font-size:var(--text-sm);line-height:1.5;color:var(--ink-soft)}.tent-availability-message.state-error{color:var(--danger)}@media (min-width: 960px){.tent-widget-page.has-availability{display:grid;grid-template-columns:minmax(0,1fr) 300px;column-gap:28px;row-gap:16px;align-items:start}.tent-widget-page.has-availability>*{grid-column:1}.tent-widget-page.has-availability>.tent-availability-panel{grid-column:2;grid-row:1 / span 4;align-self:stretch}.tent-availability-summary{display:none}}@media (max-width: 767px){.tent-widget-page{padding:18px 16px;gap:14px}.tent-widget-page .tent-widget-occupancy-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tent-widget-page .tent-widget-occupancy-row>.tent-widget-mobile,.tent-widget-page .tent-widget-occupancy-row>.tent-widget-account{grid-column:1 / -1}.tent-widget-page .tent-stepper-controls{gap:6px}.tent-widget-page .tent-result-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 10px}.tent-widget-page .tent-result-tent,.tent-widget-page .tent-result-soldout{grid-column:1 / -1}.tent-widget-page .tent-result-figure{flex-direction:column;align-items:flex-start;justify-content:flex-start;padding-top:10px;min-width:0}.tent-widget-page .tent-result-figure strong{font-size:17px}.tent-availability-panel{padding:14px}}.tent-widget-terms{margin:-4px 0 0;text-align:center;font-size:var(--text-xs);line-height:1.5;color:var(--ink-soft)}.tent-widget-terms a{color:var(--brand-teal);text-decoration:underline;text-underline-offset:2px}.tent-terms-view{min-height:100vh;background:linear-gradient(180deg,var(--cream) 0%,var(--heritage-champagne) 420px,var(--cream) 421px)}.tent-terms-bar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px max(var(--gutter),calc((100% - 1080px)/2));background:#fcf9f4f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.tent-terms-brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.tent-terms-brand-text{display:flex;flex-direction:column;gap:2px}.tent-terms-brand-name{font:600 19px/1.1 Playfair Display,serif;color:var(--ink)}.tent-terms-brand small{font-family:var(--font-body);font-size:11px;font-weight:600;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.tent-terms-brand-cross{display:inline-flex;color:var(--brand-primary)}.tent-terms-bar-actions{display:flex;gap:8px;flex:0 0 auto}.tent-terms-bar-button{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--border-strong);background:#fff;color:var(--ink);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background-color .15s var(--ease),border-color .15s var(--ease)}.tent-terms-bar-button:hover{border-color:var(--brand-primary)}.tent-terms-bar-button.is-primary{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.tent-terms-bar-button.is-primary:hover{filter:brightness(1.08)}.tent-terms-main{max-width:1080px;margin:0 auto;padding:40px var(--gutter) 64px}.tent-terms-intro{max-width:680px;margin:0 auto 32px;text-align:center}.tent-terms-intro-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:14px;border-radius:50%;background:#fff;color:var(--brand-primary);border:1px solid var(--gold);box-shadow:var(--shadow-sm)}.tent-terms-eyebrow{margin:0;font-size:var(--text-xs);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--brand-gold-dark)}.tent-terms-intro h1{margin:6px 0 8px;font:600 clamp(24px,3vw,32px)/1.15 "Playfair Display",serif;color:var(--brand-primary)}.tent-terms-lead{margin:0;color:var(--ink-soft);font-size:15px;line-height:1.6}.tent-terms-layout{display:grid;gap:24px}.tent-terms-document{position:relative;min-width:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-lg);padding:40px 48px;overflow-wrap:anywhere}.tent-terms-document:before{content:"";position:absolute;top:-1px;left:32px;right:32px;height:3px;border-radius:0 0 3px 3px;background:var(--gold)}.tent-terms-document .tent-terms-body p{font-size:var(--text-md);line-height:1.75;color:var(--ink);margin:0 0 12px}.tent-terms-document .tent-terms-body h3{margin:32px 0 12px;padding-top:24px;border-top:1px solid var(--line);scroll-margin-top:90px;font:600 20px/1.3 Playfair Display,serif;color:var(--brand-primary)}.tent-terms-document .tent-terms-body h3:first-child,.tent-terms-document .tent-terms-meta+h3{margin-top:0;padding-top:0;border-top:0}.tent-terms-document .tent-terms-meta{display:inline-block;margin:0 0 24px;padding:4px 12px;border-radius:999px;background:var(--cream);color:var(--ink-soft)}.tent-terms-empty{margin:0;text-align:center;color:var(--ink-soft);font-size:var(--text-md)}.tent-terms-contents{align-self:start}.tent-terms-contents>p{margin:0 0 10px;font-size:var(--text-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--brand-gold-dark)}.tent-terms-contents ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--line)}.tent-terms-view .tent-terms-contents a{display:block;padding:6px 0 6px 14px;margin-left:-2px;border-left:2px solid transparent;font-size:var(--text-sm);line-height:1.4;color:var(--ink-soft);text-decoration:none}.tent-terms-view .tent-terms-contents a:hover{color:var(--brand-primary);border-left-color:var(--brand-primary)}.tent-terms-footer{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:36px;text-align:center}@media (min-width: 960px){.tent-terms-layout.has-contents{grid-template-columns:240px minmax(0,1fr);gap:40px}.tent-terms-layout.has-contents .tent-terms-contents{position:sticky;top:96px}}@media (max-width: 959px){.tent-terms-contents{background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);padding:16px 18px}}@media (max-width: 767px){.tent-terms-main{padding:28px var(--gutter) 48px}.tent-terms-brand small{display:none}.tent-terms-bar-button{padding:0 12px}.tent-terms-document{padding:24px 20px}.tent-terms-document:before{left:20px;right:20px}.tent-terms-document .tent-terms-body p{font-size:var(--text-sm)}}@media print{.tent-terms-bar,.tent-terms-contents,.tent-terms-footer,.tent-terms-intro-icon{display:none!important}.tent-terms-view{background:#fff}.tent-terms-main{padding:0}.tent-terms-document{box-shadow:none;border:0;padding:0}.tent-terms-document:before{display:none}}.book-a-tent-benefits.is-text-only{grid-template-columns:1fr}footer{position:relative;overflow:hidden;padding:48px var(--gutter);display:flex;flex-direction:column;gap:24px;font-size:var(--text-sm);color:var(--muted-on-dark);background:var(--brand-primary-deep)}footer:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(55% 70% at 88% 0%,var(--scrim-gold-16) 0%,transparent 70%),var(--stained-glass-motif);background-size:auto,140px 140px}footer>*{position:relative;z-index:1}footer .brand{color:var(--cream)}footer .brand small{color:var(--muted-on-dark)}footer .cross{color:var(--gold-light)}.footer-top{display:flex;flex-direction:column;gap:24px}.footer-brand p{margin:12px 0 0;color:var(--muted-on-dark)}.footer-brand p+p{margin-top:6px}.footer-nav{display:flex;flex-wrap:wrap;gap:12px 18px}.footer-nav a{color:var(--cream)}.footer-nav a:hover{color:var(--gold-light)}.footer-copyright{margin:0;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);text-align:center;color:var(--muted-on-dark)}.footer-get-app{display:inline-flex;align-items:center;justify-content:center;gap:6px;margin-top:16px;min-height:44px;padding:10px 18px;border:1px solid rgba(255,255,255,.35);border-radius:999px;color:var(--cream);font-size:var(--text-sm);font-weight:600;text-decoration:none;white-space:nowrap}.footer-get-app:hover,.footer-get-app:focus-visible{border-color:var(--gold-light);color:var(--gold-light)}@media (min-width: 700px){.footer-top{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:48px}.footer-brand{max-width:460px}.footer-nav{justify-content:flex-end;max-width:560px;padding-top:6px}}@media (min-width: 1024px){.footer-top{align-items:center;gap:24px}.footer-brand{flex:0 0 auto}.footer-nav{flex:1 1 auto;max-width:none;padding-top:0;gap:10px 12px}.footer-nav a{white-space:nowrap}}@media (min-width: 1200px){.footer-nav{gap:10px 22px}}.placeholder{padding:40px var(--gutter) 100px;min-height:calc(100vh - 74px)}.tshirt-page,.pass-page,.event-detail,.program-page{min-height:calc(100vh - 74px)}.placeholder h1{font:600 clamp(34px,6vw,56px)/1.05 "Playfair Display",serif;margin:8px 0 18px}.placeholder p{color:var(--ink-soft);max-width:480px;margin:0 0 24px;font-size:var(--text-lg);line-height:1.6}.visit{padding:64px var(--gutter);background:var(--cream-deep)}.visit-intro{display:grid;grid-template-columns:1fr;gap:24px;align-items:center;margin-bottom:8px}.visit-photo{width:100%;height:220px;object-fit:cover;border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.visit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:10px 0 30px}.visit-card{border:1px solid var(--line);border-radius:var(--radius-card);padding:18px;font-size:var(--text-md);font-weight:500;text-align:center;box-shadow:inset 0 1px #fffc,var(--shadow-sm);transition:transform var(--duration-slow) var(--ease-slow),box-shadow var(--duration-slow) var(--ease-slow),border-color var(--duration-slow) var(--ease-slow)}.visit-card:hover{border-color:var(--brand-teal);transform:translateY(-2px);box-shadow:inset 0 1px #fffc,var(--shadow-md)}@media (min-width: 700px){.visit-intro{grid-template-columns:1fr 1fr;gap:40px;margin-bottom:16px}.visit-photo{height:260px}.visit-grid{grid-template-columns:repeat(4,1fr)}}.visit-intro.is-text-only{grid-template-columns:1fr}.prayer-answer-dialog{display:flex;flex-direction:column;gap:10px}.prayer-answer-request{padding:14px 16px;border-left:3px solid var(--gold);background:var(--cream-deep);border-radius:var(--radius-sm)}.prayer-answer-request .eyebrow{margin:0 0 6px;font-size:var(--text-xs)}.prayer-answer-request p{margin:0;line-height:1.55;color:var(--ink-soft)}.prayer-answer-dialog textarea{min-height:150px;resize:vertical;line-height:1.55}.prayer-answer-hint{margin:0}@media (max-width: 420px){.mobile-phone-input{grid-template-columns:1fr}.otp-code-input{gap:5px}.otp-code-input input{height:46px;font-size:var(--text-xl)}.otp-input-container{gap:5px}.otp-input-box{height:46px;font-size:var(--text-xl)}}@media (max-width: 380px){.otp-code-input{gap:4px}.otp-code-input input{height:44px;font-size:18px;border-radius:6px}.otp-input-container{gap:4px}.otp-input-box{height:44px;font-size:18px;border-radius:6px}}.media-preview{padding:64px var(--gutter)}.media-gallery{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:16px}.media-gallery-item{margin:0;border-radius:var(--radius-card);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-sm);background:var(--cream-deep);transition:transform var(--duration-slow) var(--ease-slow),box-shadow var(--duration-slow) var(--ease-slow)}.media-gallery-item:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.media-gallery-item img{display:block;width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover;background:var(--cream-deep)}.media-gallery-item{content-visibility:auto;contain-intrinsic-size:auto 340px}.media-photo{position:relative;display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;overflow:hidden}.media-photo:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.media-photo-lens{position:absolute;top:0;left:0;width:190px;height:190px;border-radius:50%;pointer-events:none;z-index:2;display:none;will-change:transform;background-color:var(--cream);background-repeat:no-repeat;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--brand-teal),0 10px 28px #20242a47}.media-photo-lens.is-visible{display:block}@media (hover: none){.media-photo-lens{display:none!important}}.media-gallery-item figcaption{margin:0;padding:12px 16px;font-size:var(--text-sm);color:var(--muted)}.media-empty-grid{display:grid;grid-template-columns:1fr;gap:12px}.media-empty-grid .state{border:1px dashed var(--line);border-top:1px dashed var(--line);border-radius:var(--radius-md);text-align:center;padding:40px 20px}.emergency-cta{padding:64px var(--gutter);background:var(--cream-deep)}.emergency-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:20px 0}.emergency-card{border:1px solid var(--line);border-radius:var(--radius-card);padding:14px 16px;display:flex;flex-direction:column;gap:4px;box-shadow:inset 0 1px #fffc,var(--shadow-sm);transition:transform var(--duration-slow) var(--ease-slow),box-shadow var(--duration-slow) var(--ease-slow)}.emergency-card:hover{transform:translateY(-3px);box-shadow:inset 0 1px #fffc,var(--shadow-md)}.emergency-card-label{font-size:var(--text-sm);font-weight:600}.emergency-card-phone{color:var(--brand-burgundy);font-size:15px}.emergency-card-pending{font-size:var(--text-sm);color:var(--muted)}.emergency-note{font-size:var(--text-sm);color:var(--muted);margin:0}@media (min-width: 600px){.media-gallery{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.media-gallery{grid-template-columns:repeat(3,1fr);gap:20px}}.emergency-tabs .day-tab.active{background:var(--brand-burgundy);border-color:var(--brand-burgundy)}@media (min-width: 700px){.emergency-grid{grid-template-columns:repeat(3,1fr)}}.login-page{position:relative;overflow:hidden;padding:80px var(--gutter);min-height:calc(100vh - 74px);display:flex;align-items:center;justify-content:center}.login-page:before{content:"";position:absolute;top:-4%;right:-4%;bottom:-4%;left:-4%;background-image:var(--login-photo, url(/images/hero-cross.webp));background-size:cover;background-position:center 32%}.login-page:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,var(--scrim-primary) 0%,var(--scrim-primary-deep) 100%),radial-gradient(60% 55% at 12% 90%,var(--scrim-gold-26) 0%,transparent 70%),repeating-linear-gradient(55deg,var(--scrim-gold-05) 0 2px,transparent 2px 46px),repeating-linear-gradient(-35deg,var(--scrim-primary-deep-faint) 0 2px,transparent 2px 52px)}.login-form{position:relative;z-index:1;width:100%;max-width:360px;display:flex;flex-direction:column;gap:6px;background:#f7f4ecf7;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:36px 32px;border-radius:20px;box-shadow:var(--shadow-lg)}.login-form-close{position:absolute;top:16px;right:16px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--border-strong);background:#fff;font-size:var(--text-lg);line-height:1;color:var(--ink);border-radius:50%}.login-form-close:hover{background:var(--cream-deep);border-color:var(--ink-soft)}.login-form form{display:flex;flex-direction:column;gap:6px}.login-form h1{margin:0 0 24px;font:600 32px/1.1 Playfair Display,serif}.login-form label{font-size:var(--text-sm);color:var(--ink-soft);margin-top:12px}.login-form input{padding:13px 15px;border:1px solid var(--border-control);border-radius:var(--radius-sm);font-size:15px;width:100%}.login-form select{padding:13px 15px;border:1px solid var(--border-control);border-radius:var(--radius-sm);font-size:15px;width:100%;background-color:#fff;color:var(--ink)}.login-form .button{margin-top:24px;align-self:flex-start}.login-form.role-chooser{max-width:640px}.role-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:28px}.role-card{display:block;text-align:left;border:1px solid var(--line);border-radius:var(--radius-card);padding:20px;box-shadow:inset 0 1px #fffc,var(--shadow-sm);transition:transform var(--duration-slow) var(--ease-slow),box-shadow var(--duration-slow) var(--ease-slow),border-color var(--duration-slow) var(--ease-slow)}.role-card:hover{transform:translateY(-3px);box-shadow:inset 0 1px #fffc,var(--shadow-md);border-color:var(--brand-teal)}.role-card strong{display:block;font-size:var(--text-lg);margin-bottom:6px;color:var(--ink)}.role-card span{display:block;font-size:var(--text-sm);color:var(--muted);line-height:1.45}.role-context{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.role-context-back{white-space:nowrap;margin-top:4px}.login-tabs{display:flex;gap:4px;background:var(--cream-deep);border-radius:var(--radius-pill);padding:4px;margin:20px 0 24px}.login-tabs button{flex:1;border:0;background:transparent;padding:11px 14px;min-height:44px;border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:600;color:var(--ink-soft);transition:background-color .15s var(--ease),color .15s var(--ease)}.login-tabs button.active{background:var(--brand-teal);color:var(--cream)}@media (min-width: 700px){.role-grid{grid-template-columns:repeat(2,1fr)}.role-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.role-grid{grid-template-columns:repeat(4,1fr)}}.program-hero{padding:56px var(--gutter) 24px}.program-hero h1{font:600 clamp(32px,6vw,52px)/1.05 "Playfair Display",serif;margin:6px 0 10px}.day-tabs{display:flex;gap:8px;overflow-x:auto;padding:4px var(--gutter) 16px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.day-tab{flex:0 0 auto;display:flex;flex-direction:column;gap:2px;padding:12px 18px;border-radius:var(--radius-md);border:1px solid var(--line);background:#fff;text-align:left;min-width:140px;transition:border-color var(--duration-slow) var(--ease-slow),box-shadow var(--duration-slow) var(--ease-slow),transform var(--duration-slow) var(--ease-slow)}.day-tab:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.day-tab.active{border-color:var(--brand-teal);background:var(--brand-teal);color:var(--cream);box-shadow:var(--shadow-md)}.day-tab-number{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--brand-teal)}.day-tab.active .day-tab-number{color:var(--gold-light)}.day-tab-title{font-size:var(--text-md)}.admin-nav::-webkit-scrollbar,.day-tabs::-webkit-scrollbar{height:6px}.admin-nav::-webkit-scrollbar-track,.day-tabs::-webkit-scrollbar-track{background:transparent}.admin-nav::-webkit-scrollbar-thumb,.day-tabs::-webkit-scrollbar-thumb{background:var(--line);border-radius:var(--radius-pill)}.admin-nav::-webkit-scrollbar-thumb:hover,.day-tabs::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.emergency-tabs{flex-wrap:wrap;overflow-x:visible;padding-left:0;padding-right:0}.emergency-tabs .day-tab{flex:1 1 calc(33.333% - 8px);min-width:0;text-align:center}@media (max-width: 480px){.emergency-tabs .day-tab{flex-basis:calc(50% - 8px);padding-left:10px;padding-right:10px}}.admin-content .day-tabs{flex-wrap:wrap;overflow-x:visible;padding-left:0;padding-right:0}.program-body{padding:8px var(--gutter) 64px}.program-day-theme{background:var(--heritage-champagne);border-left:3px solid var(--gold);border-radius:var(--radius-md);padding:14px 18px;font-size:var(--text-md);margin-bottom:24px}.program-filters{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:28px}.program-filters label{display:flex;flex-direction:column;gap:4px;min-width:0;font-size:var(--text-sm);color:var(--ink-soft)}.program-filters input,.program-filters select{padding:11px 13px;border:1px solid var(--border-control);border-radius:var(--radius-sm);font-size:var(--text-md);background:#fff}.program-search{grid-column:1 / -1}.program-results-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 16px;margin:-16px 0 20px;font-size:var(--text-sm);color:var(--muted)}.program-results-bar p{margin:0}.program-results-bar .text-link{min-height:44px;font-size:var(--text-sm)}.program-empty-title{margin:0 0 6px;color:var(--ink)}.program-empty-hint{margin:0}.program-timeline{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.program-timeline li{list-style:none}.event-detail{padding:48px var(--gutter) 80px;max-width:760px;margin:0 auto}.event-detail-heading{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:18px 0 20px}.event-detail-heading h1{font:600 clamp(28px,5vw,44px)/1.1 "Playfair Display",serif;margin:0}.event-detail-meta{display:grid;grid-template-columns:1fr;gap:16px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:24px}.event-detail-meta dt{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--brand-teal);margin-bottom:4px}.event-detail-meta dd{margin:0;font-size:15px}.event-detail-description{margin-bottom:28px;font-size:var(--text-lg);line-height:1.6}.event-detail-description h2,.event-related h2{font:500 24px Playfair Display,serif;margin:0 0 12px}.event-detail-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}.event-related{margin-top:40px}.admin-photo-grid{display:flex;flex-wrap:wrap;gap:12px;margin:10px 0}.admin-photo-thumb{width:120px;height:120px;object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--line);display:block}.admin-photo-thumb-wrap{position:relative}.vendor-card-photo,.admin-photo-thumb,.jatra-bazar-vendor-photo,.memory-card img,img.tent-result-image,img.tent-my-booking-image{background-color:var(--cream-deep)}.admin-photo-remove{position:absolute;top:-8px;right:-8px;width:24px;height:24px;border-radius:50%;background:var(--danger, #BA1A1A);color:#fff;border:2px solid #fff;cursor:pointer;font-size:15px;line-height:1;display:flex;align-items:center;justify-content:center}.admin-photo-remove:disabled{opacity:.6;cursor:not-allowed}@media (min-width: 700px){.program-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.event-detail-meta{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.program-filters{grid-template-columns:2fr repeat(4,1fr)}.program-filters label{min-width:auto}}.pass-promo{padding:24px 0}.pass-promo-inner{max-width:1100px;margin:0 auto;padding:24px 28px;border-radius:18px;background:var(--brand-primary);color:var(--cream);display:flex;flex-direction:column;align-items:flex-start;gap:8px;box-shadow:var(--shadow-md)}.dashboard-card+.pass-promo .pass-promo-inner,.pass-promo-inner{box-sizing:border-box}.pass-promo-eyebrow{margin:0;font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-light)}.pass-promo-title{margin:0;color:var(--cream);font-size:clamp(22px,5vw,32px);text-wrap:balance}.pass-promo-text{margin:0 0 6px;color:var(--muted-on-dark)}.pass-promo-error{background:var(--cream)}.dashboard-card+.pass-promo{padding:12px 0}.dashboard-card+.pass-promo .pass-promo-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:20px;row-gap:2px;padding:16px 22px;border-radius:16px}.dashboard-card+.pass-promo .pass-promo-title{font-size:clamp(20px,3.2vw,26px);line-height:1.2}.dashboard-card+.pass-promo .pass-promo-text{margin:0;font-size:var(--text-sm)}.dashboard-card+.pass-promo .pass-promo-inner>.button{grid-column:2;grid-row:1 / span 3;padding:12px 24px;white-space:nowrap}.dashboard-card+.pass-promo .pass-promo-error{grid-column:1 / -1;margin-top:8px}@media (max-width: 479px){.dashboard-card+.pass-promo .pass-promo-inner{grid-template-columns:minmax(0,1fr);padding:14px 18px}.dashboard-card+.pass-promo .pass-promo-inner>.button{grid-column:auto;grid-row:auto;justify-self:start;margin-top:8px}}.pass-page{max-width:760px;margin:0 auto;padding:24px 16px 48px}.pass-buy{display:flex;flex-direction:column;gap:10px}.pass-buy h2{margin:0}.pass-page h1{font:600 clamp(32px,6vw,52px)/1.05 var(--font-display);margin:8px 0 24px}.pass-page .pass-buy h2{font:500 24px var(--font-display)}.pass-page .pass-buy .eyebrow{margin:0;font-size:var(--text-sm);color:var(--brand-teal)}.pass-page .pass-price{margin:0;font-family:var(--font-body);font-size:var(--text-xl);font-weight:600;font-variant-numeric:lining-nums tabular-nums;color:var(--brand-burgundy)}.pass-buy .admin-form{margin-top:0;padding:0;background:transparent;border:0;box-shadow:none}.pass-details{margin-top:8px}.pass-details summary{cursor:pointer;color:var(--brand-teal)}.pass-page-ticket{margin-bottom:24px}.pass-ticket{border-radius:18px;overflow:hidden;background:#fff;box-shadow:var(--shadow-lg);border:1px solid var(--line)}.pass-ticket-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:18px 22px;background:var(--brand-primary);color:var(--cream)}.pass-ticket-event{margin:0;font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;letter-spacing:.06em}.pass-ticket-tagline{margin:2px 0 0;font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-light)}.pass-ticket-name{background:var(--brand-saffron);color:var(--on-primary);font-weight:600;padding:6px 14px;border-radius:8px;font-size:var(--text-sm)}.pass-ticket-body{padding:18px 22px}.pass-ticket-label{margin:14px 0 4px;font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600}.pass-ticket-benefit{margin:0;font-family:var(--font-display);font-size:clamp(22px,5vw,30px);font-weight:500;color:var(--brand-primary);text-wrap:balance}.pass-ticket-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px 20px;margin:16px 0 0}.pass-ticket-grid dt{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.pass-ticket-grid dd{margin:2px 0 0;font-weight:600;color:var(--ink);overflow-wrap:anywhere}.pass-ticket-services{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:4px 16px}.pass-ticket-services li span{color:var(--positive);font-weight:600}.pass-ticket-text{margin:0;font-size:var(--text-md);color:var(--ink);white-space:pre-line}.pass-ticket-terms{color:var(--muted);font-size:var(--text-sm)}.pass-ticket-actions{padding:14px 22px 18px;border-top:2px dashed var(--line);background:var(--cream)}.pass-ticket-code{margin:0 0 10px;font-size:var(--text-sm);color:var(--ink-soft)}.pass-ticket-code strong{letter-spacing:.12em;color:var(--ink)}.pass-ticket-note{margin:8px 0 0;font-size:var(--text-sm)}.pass-service-checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:4px 16px;margin-bottom:8px}.pass-admin-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:16px 0}.pass-admin-summary div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 16px}.pass-admin-summary dt{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.pass-admin-summary dd{margin:4px 0 0;font-size:var(--text-xl);font-weight:600}.admin-table-mono{font-family:monospace;font-size:var(--text-xs);overflow-wrap:anywhere}@media print{.pass-ticket-actions{display:none}}.jatra-bazar-featured,.jatra-bazar-explore{margin-top:40px}.jatra-bazar-featured:first-child,.jatra-bazar-explore:first-child{margin-top:8px}.jatra-bazar-controls{display:flex;flex-direction:column;gap:16px;margin:20px 0 28px}.jatra-bazar-search input{width:100%;padding:16px 20px;border:1.5px solid var(--border-control);border-radius:var(--radius-pill);font-size:15px;background:#fff;transition:border-color var(--duration-slow) var(--ease-slow),box-shadow var(--duration-slow) var(--ease-slow)}.jatra-bazar-search input:focus-visible{border-color:var(--brand-teal)}.jatra-bazar-category-select select{min-height:44px;padding:10px 16px;border:1.5px solid var(--border-control);border-radius:var(--radius-pill);background:#fff;font-size:var(--text-sm);font-weight:500;color:var(--ink-soft);cursor:pointer}.jatra-bazar-category-select select:focus-visible{border-color:var(--brand-teal)}.jatra-bazar-grid{display:grid;grid-template-columns:1fr;gap:16px}.vendor-card{display:flex;gap:16px;align-items:flex-start;border:1px solid var(--line);border-radius:var(--radius-card);padding:20px;box-shadow:inset 0 1px #fffc,var(--shadow-sm);transition:transform var(--duration-slow) var(--ease-slow),box-shadow var(--duration-slow) var(--ease-slow);cursor:pointer}.vendor-card:hover{transform:translateY(-3px);box-shadow:inset 0 1px #fffc,var(--shadow-md)}.vendor-card-details:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.vendor-card .button.vendor-card-details:hover:not(:disabled){transform:none}.vendor-card-action{position:relative;z-index:1;display:inline-flex;align-items:center;min-height:44px;min-width:44px;padding:0 4px}.vendor-card.vendor-card-with-photo{flex-direction:column;align-items:stretch;padding:0;overflow:hidden}.vendor-card-photo{display:block;width:100%;height:180px;object-fit:cover}.vendor-card-with-photo .vendor-card-body{padding:16px 20px 20px}.vendor-card-icon{flex-shrink:0;width:44px;height:44px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:var(--text-xl);background:var(--heritage-champagne);color:var(--brand-burgundy)}.vendor-card-body{flex:1;min-width:0}.vendor-card-heading{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.vendor-card-heading h3{margin:0;font-size:18px}.vendor-card-category{margin:4px 0 0;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--brand-teal)}.vendor-card-description{margin:8px 0 0;font-size:var(--text-md);color:var(--muted);line-height:1.5}.vendor-card-features,.jatra-bazar-vendor-features ul{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:8px 0 0;padding:0}.jatra-bazar-vendor-features{margin:16px 0 0}.jatra-bazar-vendor-features .eyebrow{display:block;margin:0 0 6px}.vendor-card-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px}.vendor-card-actions .button{padding:9px 18px;font-size:var(--text-sm)}.jatra-bazar-load-more{display:flex;justify-content:center;margin-top:28px}.jatra-bazar-vendor-detail{margin:8px auto 0;max-width:640px}.jatra-bazar-vendor-photo{display:block;width:100%;max-height:320px;object-fit:cover;border-radius:var(--radius-card);margin-bottom:20px;box-shadow:var(--shadow-sm)}.jatra-bazar-vendor-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.jatra-bazar-vendor-heading h1{margin:0;font:600 clamp(26px,4vw,36px)/1.15 "Playfair Display",serif}.jatra-bazar-vendor-description{margin:16px 0 0;font-size:var(--text-lg);line-height:1.6;color:var(--ink-soft)}.jatra-bazar-vendor-meta{display:grid;grid-template-columns:1fr;gap:16px;margin:24px 0;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.jatra-bazar-vendor-meta .eyebrow{margin:0 0 4px;font-size:var(--text-xs)}.jatra-bazar-vendor-meta p{margin:0;font-size:15px}.jatra-bazar-vendor-actions{display:flex;flex-wrap:wrap;gap:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.vendor-steps{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-wrap:wrap;gap:10px 18px}.vendor-step{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);color:var(--muted)}.vendor-step-marker{flex:0 0 auto;width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-strong);font-weight:600;font-size:12px;background:#fff}.vendor-step-text{display:flex;flex-direction:column;line-height:1.25}.vendor-step-label{color:var(--ink)}.vendor-step-note{font-size:12px;color:var(--muted)}.vendor-step.is-done .vendor-step-marker{background:var(--positive);border-color:var(--positive);color:#fff}.vendor-step.is-current .vendor-step-marker{border:2px solid var(--brand-teal);color:var(--brand-teal)}.vendor-step.is-current .vendor-step-label{color:var(--brand-teal);font-weight:600}.vendor-step.is-stopped .vendor-step-marker{border-color:var(--danger);color:var(--danger)}.vendor-step.is-stopped .vendor-step-note{color:var(--danger)}.vendor-step.is-upcoming .vendor-step-label{color:var(--muted)}@media (min-width: 700px){.jatra-bazar-grid{grid-template-columns:repeat(2,1fr)}.jatra-bazar-vendor-meta{grid-template-columns:repeat(3,1fr)}.jatra-bazar-controls{flex-direction:row;align-items:center;justify-content:space-between}.jatra-bazar-search{flex:1;max-width:420px}}@media (min-width: 1024px){.jatra-bazar-grid{grid-template-columns:repeat(3,1fr)}}.tshirt-page{max-width:1100px;margin:0 auto;padding:24px 16px 56px}.tshirt-page h1{margin:0 0 8px;font:600 clamp(32px,6vw,52px)/1.05 var(--font-display)}.tshirt-detail-info h1{font:600 clamp(26px,4vw,36px)/1.15 var(--font-display);text-wrap:balance}.tshirt-back{margin:0 0 16px}.tshirt-back a{color:var(--brand-teal)}.tshirt-promo{padding:24px 0}.tshirt-promo-inner{max-width:1100px;margin:0 auto;padding:28px;border-radius:18px;background:var(--brand-primary);color:var(--cream);display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;box-shadow:var(--shadow-md)}.tshirt-promo-copy{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.tshirt-promo-image{max-height:190px;width:auto;border-radius:12px;object-fit:contain;background:var(--cream);padding:8px}.tshirt-filters{position:sticky;top:var(--header-height, 74px);z-index:20;display:grid;gap:8px;margin:12px -16px 16px;padding:10px 16px;background:#fcf9f4f5;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.tshirt-tabs{display:flex;gap:8px;margin:0;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}.tshirt-tabs::-webkit-scrollbar{display:none}.tshirt-tabs button{flex:0 0 auto;white-space:nowrap;padding:8px 18px;min-height:40px;border:1.5px solid var(--border-strong);border-radius:var(--radius-pill);background:transparent;color:var(--ink);font-weight:600;cursor:pointer;font-size:var(--text-sm)}.tshirt-tabs button.is-active{background:var(--brand-teal);border-color:var(--brand-teal);color:#fff}.tshirt-language{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin:0}.tshirt-language-label{margin:0;flex:0 0 auto;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--ink-soft)}.tshirt-language-buttons{display:flex;gap:6px;flex-wrap:nowrap;min-width:0}.tshirt-language-buttons button{flex:0 0 auto;white-space:nowrap;padding:6px 14px;min-height:36px;border:1.5px solid var(--border-strong);border-radius:var(--radius-pill);background:transparent;color:var(--ink);font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:background-color .12s var(--ease),color .12s var(--ease)}.tshirt-language-buttons button:hover{border-color:var(--brand-teal)}.tshirt-language-buttons button.is-active{background:#fff;border-color:var(--brand-teal);color:var(--brand-teal);font-weight:600}@media (max-width: 480px){.tshirt-language-label{text-transform:none;letter-spacing:normal}.tshirt-language-buttons button{padding:6px 10px}}@media (min-width: 900px){.tshirt-filters{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px}}.tshirt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:20px}.tshirt-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform var(--duration-slow) var(--ease-slow),box-shadow var(--duration-slow) var(--ease-slow)}.tshirt-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.tshirt-card.is-unavailable{opacity:.7}.tshirt-card-link{display:block;color:inherit;text-decoration:none}.tshirt-card-media{position:relative;aspect-ratio:4 / 5;display:flex;align-items:center;justify-content:center;background:#fff;border-bottom:1px solid var(--line)}.tshirt-card-media img{width:100%;height:100%;object-fit:contain}.tshirt-card-placeholder,.tshirt-gallery-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-family:var(--font-display);font-size:64px;color:var(--muted);background:var(--cream)}.tshirt-card-offer,.tshirt-card-soldout{position:absolute;bottom:10px;left:10px;padding:4px 10px;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600}.tshirt-card-offer{background:var(--brand-burgundy);color:#fff}.tshirt-card-soldout{background:var(--ink);color:var(--cream)}.tshirt-card-body{padding:14px 16px 18px;display:flex;flex-direction:column;gap:6px}.tshirt-card-audience{margin:0;font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.tshirt-card-name{margin:0;font:500 clamp(16px,1.4vw,18px)/1.3 var(--font-display)}.tshirt-card-nowrap{white-space:nowrap}.tshirt-card-category{display:block;margin-top:2px;font-family:var(--font-body);font-size:var(--text-xs);font-weight:500;letter-spacing:.02em;color:var(--muted)}.tshirt-card-price{margin:0;display:flex;align-items:baseline;gap:6px}.tshirt-card-price strong{font-size:var(--text-lg);color:var(--brand-burgundy)}.tshirt-card-price s{color:var(--muted);font-size:var(--text-sm)}.tshirt-card-swatches{display:flex;gap:6px;list-style:none;margin:2px 0 0;padding:0}.tshirt-swatch{display:inline-block;width:18px;height:18px;border-radius:50%;border:1.5px solid rgba(0,0,0,.28)}.tshirt-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start;margin-top:16px}.tshirt-gallery-stage{position:relative;width:100%;aspect-ratio:1 / 1;background:var(--cream);border-radius:16px;border:1px solid var(--line);overflow:hidden}.tshirt-gallery-main{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;opacity:0;transform:scale(1.02);transition:opacity .6s var(--ease),transform 6s linear}.tshirt-gallery-main.is-current{opacity:1;transform:scale(1)}.tshirt-gallery-lens{position:absolute;top:0;left:0;width:190px;height:190px;border-radius:50%;overflow:hidden;pointer-events:none;z-index:3;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--brand-teal),0 10px 28px #20242a47;background:var(--cream);display:none;will-change:transform}.tshirt-gallery-lens.is-visible{display:block}.tshirt-gallery-lens-image{position:absolute;top:0;left:0;max-width:none;transform-origin:0 0;will-change:transform}.tshirt-gallery-zoom-open{position:absolute;right:10px;bottom:10px;z-index:2;width:44px;height:44px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--line);border-radius:50%;background:#ffffffeb;color:var(--ink);box-shadow:var(--shadow-sm);cursor:pointer;transition:background-color .15s var(--ease),color .15s var(--ease),transform .15s var(--ease)}.tshirt-gallery-zoom-open:hover{background:#fff;color:var(--brand-teal);transform:scale(1.06)}.tshirt-gallery-zoom-badge{display:flex}@media (hover: none){.tshirt-gallery-lens{display:none!important}}.tshirt-gallery-nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;background:#ffffffeb;color:var(--ink);font-size:24px;line-height:1;cursor:pointer;box-shadow:var(--shadow-sm);transition:background-color .15s var(--ease),color .15s var(--ease)}.tshirt-gallery-nav:hover{background:#fff;color:var(--brand-teal)}.tshirt-gallery-nav.is-prev{left:10px}.tshirt-gallery-nav.is-next{right:10px}.tshirt-gallery-thumbs{display:flex;gap:8px;margin:12px 0 0;padding:0;list-style:none;flex-wrap:wrap}.tshirt-gallery-thumbs button{width:62px;height:62px;padding:2px;border:2px solid transparent;border-radius:10px;background:var(--cream);cursor:pointer;transition:border-color .15s var(--ease),transform .15s var(--ease)}.tshirt-gallery-thumbs button:hover{transform:translateY(-2px)}.tshirt-gallery-thumbs button.is-active{border-color:var(--brand-teal)}.tshirt-gallery-thumbs img{width:100%;height:100%;object-fit:cover;border-radius:8px;display:block}.tshirt-detail-price{display:flex;align-items:baseline;gap:8px;margin:4px 0 12px}.tshirt-detail-price strong{font-family:var(--font-body);font-size:var(--text-xl);font-weight:600;font-variant-numeric:lining-nums tabular-nums;color:var(--brand-burgundy)}.tshirt-detail-price s{color:var(--muted)}.tshirt-detail-description{margin:0 0 20px;color:var(--ink-soft)}.tshirt-card-price,.tshirt-order-item-price,.tshirt-summary,.tshirt-card-price strong,.tshirt-summary-total dd{font-variant-numeric:lining-nums tabular-nums}.tshirt-specs h2{font:500 24px var(--font-display);margin:0 0 8px}.tshirt-specs dl{margin:0 0 20px}.tshirt-specs dl div{display:flex;gap:12px;padding:6px 0;border-bottom:1px solid var(--line)}.tshirt-specs dt{flex:0 0 40%;color:var(--muted)}.tshirt-specs dd{margin:0;flex:1}.tshirt-picker{display:flex;flex-direction:column;gap:20px;margin:8px 0 16px}.tshirt-picker-group{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.tshirt-picker-group legend,.tshirt-picker-group>label{font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:0}.tshirt-colour-list,.tshirt-size-list{display:flex;gap:8px;list-style:none;margin:0;padding:0;flex-wrap:wrap}.tshirt-colour{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;min-height:44px;border:1.5px solid var(--border-strong);border-radius:var(--radius-pill);cursor:pointer}.tshirt-colour.is-selected{border-color:var(--brand-teal);background:var(--focus-ring-tint);font-weight:600}.tshirt-size{display:inline-flex;align-items:center;justify-content:center;min-width:52px;min-height:44px;padding:8px 14px;border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer}.tshirt-size.is-unavailable{color:var(--muted);text-decoration:line-through;cursor:not-allowed;opacity:.55}.tshirt-colour,.tshirt-size{position:relative}.tshirt-colour>input,.tshirt-size>input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.tshirt-size.is-selected{border-color:var(--brand-teal);background:var(--focus-ring-tint);font-weight:600}.tshirt-colour:has(>input:focus-visible),.tshirt-size:has(>input:focus-visible){outline:2px solid var(--focus-ring);outline-offset:2px}.tshirt-stepper{display:inline-flex;align-items:center;gap:8px}.tshirt-stepper button{width:44px;height:44px;border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);background:transparent;font-size:20px;cursor:pointer}.tshirt-stepper button:disabled{opacity:.5;cursor:not-allowed}.tshirt-stepper input{width:72px;min-height:44px;text-align:center;border:1.5px solid var(--border-control);border-radius:var(--radius-sm);font-size:var(--text-md)}.tshirt-pilgrim-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:28px 30px 30px}.tshirt-pilgrim-card-head{margin:0 0 24px;padding-bottom:20px;border-bottom:1px solid var(--line)}.tshirt-pilgrim-card-head h2{margin:0 0 6px;font:500 24px var(--font-display)}.tshirt-checkout .tshirt-checkout-summary h2{font:500 24px var(--font-display)}.tshirt-pilgrim-card-head p{margin:0;color:var(--ink-soft);font-size:var(--text-md);line-height:1.55;max-width:56ch}.tshirt-field-grid{display:flex;flex-direction:column;gap:28px}.tshirt-fieldset{border:0;padding:0;margin:0;min-width:0}.tshirt-fieldset legend{padding:0;font-size:var(--text-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--brand-teal);margin-bottom:14px}.tshirt-field{margin-bottom:18px}.tshirt-field:last-child{margin-bottom:0}.tshirt-field>label,.tshirt-label-like{display:block;margin-bottom:7px;font-size:var(--text-sm);font-weight:600;color:var(--ink)}.tshirt-req{color:var(--brand-burgundy)}.tshirt-field-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 16px}.tshirt-pilgrim-card input,.tshirt-pilgrim-card textarea{width:100%;padding:12px 14px;border:1.5px solid var(--border-control);border-radius:var(--radius-sm);background:#fff;color:var(--ink);font-size:var(--text-md);transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}.tshirt-pilgrim-card textarea{resize:vertical;line-height:1.5}.tshirt-pilgrim-card input::placeholder,.tshirt-pilgrim-card textarea::placeholder{color:var(--ink-soft);opacity:.75}.tshirt-pilgrim-card input:focus,.tshirt-pilgrim-card textarea:focus{outline:none;border-color:var(--brand-teal);box-shadow:0 0 0 3px var(--focus-ring-glow)}.tshirt-pilgrim-card input:disabled,.tshirt-pilgrim-card textarea:disabled{background:var(--cream);opacity:.7;cursor:not-allowed}.tshirt-pilgrim-card .phone-input-group input{flex:1}.tshirt-hint{margin:7px 0 0;font-size:var(--text-sm);color:var(--muted)}.tshirt-hint.is-error{color:var(--danger);font-weight:600}.tshirt-optional{margin-left:6px;font-weight:400;font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.tshirt-otp{margin-top:14px;padding-top:14px;border-top:1px dashed var(--border-strong)}.button.secondary.tshirt-otp-send{width:100%;min-height:52px;justify-content:center;border:2px solid var(--brand-primary-light);background:var(--brand-primary-container);color:var(--brand-primary-dark);font-weight:700;box-shadow:0 3px 10px #7b1e2b1f}.button.secondary.tshirt-otp-send:hover:not(:disabled){border-color:var(--brand-primary);background:var(--brand-primary-container);color:var(--brand-primary-dark);box-shadow:0 4px 14px #7b1e2b33}.button.secondary.tshirt-otp-send:focus-visible{outline:3px solid var(--brand-primary);outline-offset:3px}.tshirt-otp-actions{display:flex;align-items:center;gap:14px;margin-top:12px;flex-wrap:wrap}.tshirt-otp-done{display:flex;align-items:center;gap:8px;margin:0;padding:11px 14px;background:#28734a14;border:1px solid rgba(40,115,74,.3);border-radius:var(--radius-sm);color:var(--positive);font-size:var(--text-md);font-weight:600}.tshirt-otp-tick{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--positive);color:#fff;font-size:12px;line-height:1}.tshirt-readonly{margin:0;padding:12px 14px;background:var(--cream);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);font-size:var(--text-md)}.tshirt-readonly-value{font-weight:600;color:var(--ink)}.tshirt-order-item{display:flex;gap:14px;align-items:flex-start;margin:16px 0 0}.tshirt-order-item-image-wrap{position:relative;width:68px;height:68px;flex:0 0 68px;overflow:hidden;border-radius:10px;border:1px solid var(--line);background:var(--cream)}.tshirt-order-item-image{display:block;width:100%;height:100%;object-fit:contain;object-position:center;transform:scale(1)}.tshirt-order-item-body{min-width:0}.tshirt-order-item-name{margin:0 0 3px;font-size:var(--text-md);font-weight:600;color:var(--ink)}.tshirt-order-item-meta{margin:0 0 4px;font-size:var(--text-sm);color:var(--ink-soft)}.tshirt-order-item-unset{color:var(--brand-burgundy)}.tshirt-order-item-price{margin:0;font-size:var(--text-sm);color:var(--ink-soft)}.tshirt-order-item-change{margin:10px 0 0;font-size:var(--text-sm)}.tshirt-order-item-change a{color:var(--brand-teal)}.tshirt-summary dd s{color:var(--muted);font-weight:500}.tshirt-summary-saving dt{color:var(--positive)!important;font-weight:600}.tshirt-summary-saving dd{color:var(--positive);font-weight:600}.tshirt-summary-coupon dt,.tshirt-summary-coupon dd{color:var(--positive-strong)!important;font-weight:600}.tshirt-buy-bar{display:none}.tshirt-zoom-modal{max-width:900px;background:#fff}.tshirt-zoom-surface{position:relative;display:flex;align-items:center;justify-content:center;height:min(70vh,620px);overflow:hidden;background:var(--cream);border-radius:12px;touch-action:none;cursor:zoom-in;-webkit-user-select:none;user-select:none}.tshirt-zoom-image{max-width:100%;max-height:100%;object-fit:contain;transform-origin:center center;will-change:transform;transition:none}.tshirt-zoom-hint{margin:12px 0 0;text-align:center;font-size:var(--text-sm)}.tshirt-pay-button{display:inline-flex;align-items:center;justify-content:center;gap:10px}.tshirt-pay-amount{font-variant-numeric:lining-nums tabular-nums;font-weight:600;padding-left:10px;border-left:1px solid rgba(32,36,42,.28)}.tshirt-checkout-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start;margin-top:16px}.tshirt-checkout-main{display:flex;flex-direction:column;gap:20px}.tshirt-checkout-summary{position:sticky;top:90px}.tshirt-checkout-summary h3,.admin-card h3{margin:20px 0 6px;font-size:var(--text-md)}.tshirt-summary{margin:12px 0}.tshirt-summary div{display:flex;justify-content:space-between;gap:16px;padding:7px 0;border-bottom:1px solid var(--line)}.tshirt-summary dt{color:var(--muted)}.tshirt-summary dd{margin:0;text-align:right;font-weight:600}.tshirt-summary-total{border-bottom:0!important;padding-top:12px!important}.tshirt-summary-total dt{color:var(--ink)!important;font-weight:600}.tshirt-summary-total dd{font-size:var(--text-lg);color:var(--brand-burgundy)}.tshirt-confirmation h1{margin:0 0 8px}.tshirt-confirmation-address{font-style:normal;padding:12px 14px;background:var(--cream);border-radius:12px;border:1px solid var(--line)}.admin-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:24px 0 12px}.admin-table.tshirt-admin-products td:first-child,.admin-table.tshirt-admin-products th:first-child{width:auto}.admin-table.tshirt-admin-products th:nth-child(1){min-width:220px}.admin-table.tshirt-admin-products th:nth-child(4),.admin-table.tshirt-admin-products th:nth-child(5){min-width:130px}.tshirt-admin-product{display:flex;align-items:center;gap:10px}.tshirt-admin-product img,.tshirt-admin-thumb{width:44px;height:44px;object-fit:contain;border-radius:8px;background:var(--cream);border:1px solid var(--line);flex:0 0 auto}.tshirt-admin-thumb.is-empty{display:inline-block}.tshirt-admin-actions{display:flex;gap:6px;flex-wrap:wrap}.tshirt-admin-actions .button,.tshirt-admin-status-actions .button{padding:8px 14px;min-height:40px;font-size:var(--text-sm)}.tshirt-admin-address{max-width:220px;font-size:var(--text-sm)}.tshirt-admin-colours,.tshirt-admin-sizes,.tshirt-admin-specs,.tshirt-admin-images,.tshirt-admin-languages{list-style:none;margin:0 0 10px;padding:0;display:flex;gap:10px;flex-wrap:wrap}.tshirt-admin-languages li{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--cream)}.tshirt-admin-languages li>label{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;cursor:pointer;font-weight:500}.tshirt-admin-languages li:has(input:checked){border-color:var(--brand-teal);background:var(--cream-deep)}.tshirt-admin-languages input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--brand-teal)}.tshirt-admin-variant-images{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:12px}.tshirt-admin-variant-images>li{border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px 14px;background:var(--cream)}.tshirt-admin-variant-images-title{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-weight:600;font-size:var(--text-sm)}.tshirt-admin-image-add{display:inline-flex;align-items:center}.tshirt-admin-image-remove{position:absolute;top:2px;right:2px;width:22px;height:22px;border-radius:50%;border:1px solid var(--border-strong);background:var(--cream);color:var(--ink);font-size:15px;line-height:1;cursor:pointer;display:grid;place-items:center}.tshirt-admin-image-remove:hover{background:var(--cream-deep)}.tshirt-admin-images li{position:relative}.tshirt-admin-colours li,.tshirt-admin-specs li{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--cream)}.tshirt-admin-colours li>label{display:inline-flex;align-items:center;gap:7px;cursor:pointer}.tshirt-admin-colours li:has(input:checked){border-color:var(--brand-teal);background:var(--cream-deep)}.tshirt-admin-colours input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--brand-teal)}.tshirt-admin-sizes li{display:inline-flex;align-items:center;padding:7px 14px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--cream)}.tshirt-admin-sizes li>label{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-size:var(--text-sm);font-weight:500}.tshirt-admin-sizes li:has(input:checked){border-color:var(--brand-teal);background:var(--cream-deep)}.tshirt-admin-sizes input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--brand-teal)}.tshirt-admin-colour-add,.tshirt-admin-spec-add{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.tshirt-admin-colour-add input[type=text],.tshirt-admin-colour-add input:not([type]),.tshirt-admin-spec-add input{padding:8px 12px;min-height:40px;border:1.5px solid var(--border-control);border-radius:var(--radius-sm)}.tshirt-admin-images li img{width:72px;height:72px;object-fit:contain;border-radius:8px;border:1px solid var(--line);background:var(--cream)}.tshirt-variant-grid{border-collapse:collapse;margin:8px 0}.tshirt-variant-grid th,.tshirt-variant-grid td{border:1px solid var(--line);padding:6px 10px;text-align:center}.tshirt-variant-grid thead th{background:var(--cream)}.tshirt-admin-status-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.tshirt-sales{display:grid;gap:10px;justify-items:start}.tshirt-sales-state{margin:0;font-size:var(--text-lg)}.tshirt-sales-state strong{font-weight:600;letter-spacing:.04em}.tshirt-sales-state[data-state=on] strong{color:var(--positive)}.tshirt-sales-state[data-state=off] strong{color:var(--muted)}.tshirt-promo-images{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin:18px 0 4px}.tshirt-promo-image{display:grid;gap:8px;justify-items:start;align-content:start}.tshirt-promo-image-head{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}.tshirt-promo-image-head label{font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:var(--text-sm)}.tshirt-promo-image img,.tshirt-promo-image .tshirt-admin-thumb{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:10px;background:var(--cream);border:1px solid var(--line)}.tshirt-promo-image img.is-portrait{width:50%;aspect-ratio:9 / 16;object-fit:contain}.tshirt-promo-image input[type=file]{font:inherit;font-size:var(--text-sm);max-width:100%}.tshirt-promo-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}.tshirt-order-modal{max-width:640px}.tshirt-order-modal h3{margin:20px 0 8px}.tshirt-order-modal address{font-style:normal}.tshirt-order-statuses{display:flex;gap:18px;flex-wrap:wrap;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--cream)}.tshirt-order-statuses>span{display:inline-flex;align-items:center;gap:8px;font-size:var(--text-sm)}.modal-footer{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:20px}.tshirt-checklist{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--cream);font-weight:600}@media (max-width: 860px){.tshirt-detail-grid,.tshirt-checkout-grid{grid-template-columns:minmax(0,1fr)}.tshirt-checkout-summary{position:static}.tshirt-buy-bar{display:flex;position:sticky;bottom:0;z-index:20;align-items:center;justify-content:space-between;gap:16px;margin:20px -16px 0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#f7f4ecf5;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--line);box-shadow:0 -4px 16px #20242a12}.tshirt-buy-bar .button{flex:0 0 auto;min-width:150px}.tshirt-buy-inline{display:none}.tshirt-gallery-stage{aspect-ratio:4 / 3}.tshirt-field-row{grid-template-columns:minmax(0,1fr)}.tshirt-pilgrim-card{padding:22px 20px 24px}}@media (max-width: 700px){.tshirt-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}.tshirt-page{padding-top:16px}.tshirt-page h1{font-size:clamp(28px,8vw,36px);margin-bottom:4px}.tshirt-intro .eyebrow{margin-bottom:4px}.tshirt-intro .muted{margin:0;font-size:var(--text-sm)}.tshirt-card-body{padding:10px 12px 12px;gap:4px}}@media (max-width: 359px){.tshirt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tshirt-card-body{padding:8px 10px 10px}.tshirt-promo-inner{padding:20px}}.tshirt-bulk-import{margin-top:12px}.tshirt-bulk-panel{margin-top:14px;padding:18px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--cream);display:grid;gap:12px}.tshirt-bulk-panel code{background:var(--cream-deep);padding:1px 5px;border-radius:4px;font-size:.92em}.tshirt-bulk-panel .muted{margin:0}.tshirt-bulk-fields{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.tshirt-bulk-fields label{display:grid;gap:6px;font-weight:600;font-size:var(--text-sm)}.tshirt-bulk-fields input[type=file]{font-weight:400}.tshirt-bulk-actions{display:flex;gap:12px;flex-wrap:wrap}.tshirt-bulk-report{display:grid;gap:10px}.tshirt-bulk-report .state{margin:0}.tshirt-bulk-errors{margin:0;padding-left:20px;max-height:220px;overflow-y:auto;display:grid;gap:4px;font-size:var(--text-sm);color:var(--danger)}.tshirt-bulk-preview summary{cursor:pointer;font-weight:600;margin-bottom:8px}.service-form-header{display:flex;align-items:center;gap:16px;margin-bottom:28px}.service-form-icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:var(--radius-lg);background:var(--heritage-champagne);color:var(--ink);font-size:var(--text-2xl);flex-shrink:0}.service-form-header h1{margin:0;font:600 clamp(24px,3vw,30px)/1.15 "Playfair Display",serif}.service-form-header p{margin:4px 0 0;color:var(--ink-soft);font-size:14px}.service-form{max-width:640px}.service-form-section{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.service-form-section:first-of-type{margin-top:4px;padding-top:0;border-top:0}.service-form-section-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--brand-teal);margin:0 0 12px}.service-form-hint{font-size:var(--text-sm);color:var(--muted);margin:4px 0 0}.priority-selector{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap}.priority-option{position:relative}.priority-option input{position:absolute;opacity:0;width:1px;height:1px}.priority-option span{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:10px 18px;border:1.5px solid var(--border-strong);border-radius:var(--radius-pill);font-size:var(--text-sm);color:var(--ink-soft);cursor:pointer;transition:background-color .15s var(--ease),color .15s var(--ease),border-color .15s var(--ease)}.priority-option input:checked+span{background:var(--brand-teal);border-color:var(--brand-teal);color:var(--cream)}.priority-option input:focus-visible+span{outline:2px solid var(--focus-ring);outline-offset:2px}.priority-option[data-priority=HIGH] input:checked+span{background:var(--danger);border-color:var(--danger)}.photo-dropzone{margin-top:8px;border:1.5px dashed var(--border-strong);border-radius:var(--radius-md);padding:20px;text-align:center;background:var(--cream-deep)}.photo-dropzone input{display:none}.photo-dropzone-label{display:inline-flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;color:var(--ink-soft);font-size:var(--text-sm)}.photo-dropzone-label strong{color:var(--ink);font-size:var(--text-md)}.photo-preview{margin-top:8px;position:relative;display:inline-block}.photo-preview img{max-width:220px;max-height:160px;border-radius:10px;display:block;box-shadow:var(--shadow-sm)}.photo-preview-remove{position:absolute;top:-10px;right:-10px;width:30px;height:30px;border-radius:50%;border:1px solid var(--border-strong);background:#fff;color:var(--ink);font-size:13px;display:flex;align-items:center;justify-content:center}.tent-type-image-field{margin:4px 0 12px}.tent-type-image-field .photo-preview{display:block;margin-bottom:8px}.profile-avatar{width:76px;height:76px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--heritage-champagne);display:flex;align-items:center;justify-content:center;border:1px solid var(--line)}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-avatar-placeholder{font-size:28px;font-weight:600;color:var(--ink)}.profile-avatar-upload{display:inline-flex;margin-top:10px;cursor:pointer}.memory-grid{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.memory-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}.memory-card img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.memory-card-loading{width:100%;aspect-ratio:1;background:var(--cream-deep)}.memory-card p{margin:10px 12px 0;font-size:var(--text-sm);color:var(--ink-soft)}.memory-card .text-link{margin:8px 12px 12px;align-self:flex-start}.admin-loading{padding:100px var(--gutter)}.admin-shell{min-height:100vh;display:flex;flex-direction:column}.admin-header{display:flex;justify-content:space-between;align-items:center;padding:16px var(--gutter);border-bottom:1px solid var(--line);background:#fff;gap:12px;flex-wrap:wrap;box-shadow:0 1px #20242a05,var(--shadow-sm);position:relative;z-index:2}.admin-account{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:var(--text-sm)}.admin-body{display:flex;flex-direction:column;flex:1}.admin-nav{display:flex;gap:4px;padding:10px var(--gutter);border-bottom:1px solid var(--line);background:var(--cream-deep);overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.admin-nav a,.admin-nav button{font-size:var(--text-md);font-family:inherit;padding:9px 16px;min-height:44px;display:inline-flex;align-items:center;gap:10px;border-radius:var(--radius-pill);white-space:nowrap;color:var(--ink-soft);border:0;background:transparent;cursor:pointer;transition:background-color .15s var(--ease),color .15s var(--ease)}.admin-nav a:hover:not(.active),.admin-nav button:hover:not(.active){background:#ffffff8c;color:var(--ink)}.admin-nav a.active{background:var(--brand-teal);color:var(--cream);box-shadow:var(--shadow-sm)}.admin-nav-icon{font-size:15px;line-height:1;flex-shrink:0}.admin-content{padding:32px var(--gutter) 80px;flex:1;min-width:0}@media (max-width: 767px){.admin-header{padding-top:calc(16px + env(safe-area-inset-top,0px))}}.private-back{display:none}@media (max-width: 767px){.private-back{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin:0 0 4px -8px;padding:0 8px;border:0;border-radius:var(--radius-md);background:none;color:var(--ink-soft);font:inherit;cursor:pointer}.private-back:focus-visible{outline:2px solid var(--brand-teal);outline-offset:2px}}@media (min-width: 880px){.admin-body{flex-direction:row}.admin-nav{flex-direction:column;align-items:stretch;gap:3px;width:240px;flex-shrink:0;padding:24px 14px;border-bottom:0;border-right:1px solid var(--line);overflow-x:visible;overflow-y:auto;position:sticky;top:0;align-self:flex-start;max-height:100vh;max-height:100dvh;overscroll-behavior:contain}.admin-nav a,.admin-nav button{border-radius:var(--radius-md);justify-content:flex-start;padding:11px 14px;font-size:var(--text-sm);font-weight:500}.admin-nav-icon{width:20px;text-align:center}.admin-content{padding-left:40px;padding-right:40px}}@media (min-width: 1280px){.admin-content{padding-left:56px;padding-right:56px}}.admin-content h1{font:600 clamp(28px,3.4vw,36px)/1.15 "Playfair Display",serif;margin:6px 0 24px}.admin-cards{display:grid;grid-template-columns:1fr;gap:16px;margin-top:12px}.admin-card{border:1px solid var(--line);border-radius:var(--radius-card);padding:24px;box-shadow:inset 0 1px #fffc,var(--shadow-sm);transition:transform var(--duration-slow) var(--ease-slow),box-shadow var(--duration-slow) var(--ease-slow)}.admin-card:hover{transform:translateY(-2px);box-shadow:inset 0 1px #fffc,var(--shadow-md)}.admin-card h2{margin:0 0 8px;font-size:19px}.admin-card p{margin:0;font-size:14px;color:var(--muted);line-height:1.5}.admin-card .event-detail-meta{padding:0;border:0;margin-bottom:16px}.dashboard-card .dashboard-identity{display:flex;align-items:center;gap:18px}.dashboard-card .dashboard-meta{display:flex;flex-direction:column;gap:4px;align-items:flex-start;min-width:0}.dashboard-card .dashboard-name{margin:0;font:600 18px var(--font-display);color:var(--ink)}.dashboard-card .dashboard-phone{margin:0;font-size:var(--text-sm);color:var(--ink-soft)}.admin-form{max-width:560px;display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-card);padding:30px;margin-top:8px;box-shadow:var(--shadow-sm)}.tent-terms-form{max-width:860px}.tent-terms-form textarea{font-family:inherit;line-height:1.5;resize:vertical}.admin-form label{font-size:var(--text-sm);color:var(--ink-soft);margin-top:12px;font-weight:500}.admin-form input,.admin-form select,.admin-form textarea{padding:12px 14px;border:1px solid var(--border-control);border-radius:var(--radius-sm);font-size:14px;width:100%;background:#fff;color:var(--ink);transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}.admin-form input:hover,.admin-form select:hover,.admin-form textarea:hover{border-color:var(--ink-soft)}.admin-form input:focus-visible,.admin-form select:focus-visible,.admin-form textarea:focus-visible{outline:none;border-color:var(--brand-teal);box-shadow:0 0 0 3px var(--focus-ring-glow-soft)}.admin-form input:disabled,.admin-form select:disabled,.admin-form textarea:disabled{background:var(--cream-deep);color:var(--muted);cursor:not-allowed}.admin-form .is-invalid{border-color:var(--danger)}.admin-form .field-required{color:var(--danger);font-weight:700}.admin-form .field-error{margin:4px 0 0;font-size:var(--text-xs);color:var(--danger)}.admin-form select,.login-form select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236B625B' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.admin-form fieldset{border:0;border-top:1px solid var(--line);border-radius:0;margin:26px 0 0;padding:0;overflow:hidden}.admin-form fieldset:first-of-type{margin-top:6px;border-top:0}.admin-form legend{float:left;width:100%;padding:22px 0 14px;margin:0;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--brand-teal)}.admin-form fieldset:first-of-type legend{padding-top:0}.admin-form fieldset>legend+*{clear:both}.checkbox-field{display:flex;align-items:center;gap:8px;font-size:var(--text-md);color:var(--ink);margin-top:12px}.checkbox-field input{width:auto;margin:0}.admin-form-row{display:grid;grid-template-columns:1fr;gap:12px}.admin-form-actions{display:flex;gap:10px;margin-top:20px}.admin-form .admin-form-heading{font-size:var(--text-md);font-weight:600;color:var(--ink);margin:0 0 4px}.admin-form .field-hint{margin:6px 0 0;font-size:var(--text-xs);color:var(--ink-soft)}.admin-form .form-error{margin:8px 0 0;font-size:var(--text-xs);color:var(--danger)}.service-form-success{display:flex;align-items:flex-start;gap:16px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-card);padding:28px;box-shadow:var(--shadow-sm);max-width:640px}.service-form-success-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--status-success-container);color:var(--positive);font-size:var(--text-xl);flex-shrink:0}.service-form-success h2{margin:0 0 6px;font:600 20px Playfair Display,serif}.service-form-success p{margin:0;color:var(--ink-soft);font-size:var(--text-md);line-height:1.5}.service-form-success .button{margin-top:16px}.admin-filters{display:flex;gap:16px;margin:8px 0 24px;flex-wrap:wrap;align-items:flex-end}.admin-filters label{display:flex;flex-direction:column;gap:6px;font-size:var(--text-sm);font-weight:500;color:var(--ink-soft)}.admin-filters select,.admin-filters input{padding:10px 36px 10px 12px;border:1px solid var(--border-control);border-radius:var(--radius-sm);font-size:var(--text-md);font-family:inherit;min-height:40px;background:#fff;color:var(--ink);transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}.admin-filters input{padding-right:12px;min-width:220px}.admin-filter-summary{display:flex;align-items:center;gap:4px 16px;flex-wrap:wrap;margin:-12px 0 16px}.admin-filter-summary .admin-table-count{margin:0}.admin-filter-summary .text-link{min-height:44px;font-size:var(--text-sm)}.admin-filters select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236B625B' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.admin-filters select:hover,.admin-filters input:hover{border-color:var(--ink-soft)}.admin-filters select:focus-visible,.admin-filters input:focus-visible{outline:none;border-color:var(--brand-teal);box-shadow:0 0 0 3px var(--focus-ring-glow-soft)}.admin-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.admin-list-item{background:#fff;border:1px solid var(--line);border-radius:var(--radius-card);padding:22px 24px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-sm);transition:box-shadow .18s var(--ease),border-color .18s var(--ease),transform .18s var(--ease)}.admin-list-item:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-1px)}.placeholder .admin-list-item{position:relative;background:radial-gradient(130% 160% at 15% -10%,#ffffff 0%,var(--cream) 55%,var(--cream-deep) 100%);box-shadow:inset 0 1px #fffc,var(--shadow-sm);transition:transform var(--duration-slow) var(--ease-slow),box-shadow var(--duration-slow) var(--ease-slow)}.placeholder .admin-list-item:before{content:"";position:absolute;top:0;left:16px;right:16px;height:2px;border-radius:0 0 2px 2px;background:linear-gradient(90deg,transparent,var(--gold) 50%,transparent);opacity:.6}.placeholder .admin-list-item:hover{transform:translateY(-2px);box-shadow:inset 0 1px #fffc,var(--shadow-md)}.admin-list-item h3{margin:0 0 6px;font-size:17px}.admin-list-item p{margin:0 0 8px;font-size:var(--text-md);color:var(--muted);line-height:1.5}.admin-list-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-list-actions{display:flex;gap:14px;align-items:center}.vendor-approved-label{color:var(--positive);font-weight:600;font-size:var(--text-sm)}.vendor-view-count{color:var(--ink-soft);font-size:var(--text-md);margin:0}.vendor-view-count strong{color:var(--brand-burgundy);font-size:var(--text-lg)}.admin-field-label{display:block;font-weight:600;margin-bottom:4px}.pass-promo-image{margin:12px 0}.pass-promo-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:8px}.pass-promo-preview{width:220px;aspect-ratio:16 / 9;object-fit:contain;border-radius:10px;background:var(--cream);border:1px solid var(--line)}.pass-promo-preview.is-portrait{width:110px;aspect-ratio:9 / 16}@media (min-width: 700px){.admin-form-row{grid-template-columns:1fr 1fr}}@media (min-width: 1024px){.admin-cards{grid-template-columns:repeat(3,1fr)}}.site-images-intro{max-width:760px}.site-images-summary{margin:12px 0 16px;color:var(--ink-soft)}.site-images-table td{vertical-align:top}.site-images-table .site-image-row.is-dirty{background:var(--cream-deep)}.site-image-thumb{width:120px;aspect-ratio:16 / 10;border-radius:6px;overflow:hidden;background:var(--cream-deep);border:1px solid var(--line);display:flex;align-items:center;justify-content:center}.site-image-thumb img{width:100%;height:100%;object-fit:cover;display:block}.site-image-missing{font-size:var(--text-xs);color:var(--danger);text-align:center;padding:4px}.site-image-key{display:block;margin-top:4px;font-size:var(--text-xs);color:var(--ink-soft)}.site-image-url code{display:block;word-break:break-all;font-size:var(--text-xs);margin-bottom:6px}.site-image-variants{margin-top:6px;font-size:var(--text-xs)}.site-image-variants ul{margin:4px 0 0;padding-left:16px}.site-image-routes{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px}.site-image-routes code{font-size:var(--text-xs);background:var(--cream-deep);padding:2px 6px;border-radius:4px}.site-image-sections{margin:6px 0 0;font-size:var(--text-xs)}.site-image-saved{display:block;margin-top:6px;font-size:var(--text-xs);color:var(--positive);font-weight:600}.site-image-actions{display:flex;flex-wrap:wrap;gap:6px}.site-image-actions label.button{cursor:pointer}.site-image-actions label.button.is-disabled{opacity:.5;pointer-events:none}.site-image-actions input[type=file]:focus-visible+label.button{outline:2px solid var(--focus-ring);outline-offset:2px}.site-image-error{margin-top:8px;font-size:var(--text-sm)}.site-images-elsewhere{margin-top:40px}.site-images-elsewhere-list{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.site-images-elsewhere-list li{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:var(--radius-card);background:#fff}@media (max-width: 960px){.site-images-table,.site-images-table tbody,.site-images-table tr,.site-images-table td{display:block;width:100%}.site-images-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.site-images-table{border:0;background:transparent;box-shadow:none}.site-images-table tbody tr{background:#fff;border:1px solid var(--line);border-radius:var(--radius-card);margin-bottom:12px;padding:4px 0}.site-images-table tbody tr:not(:last-child){border-bottom:1px solid var(--line)}.site-images-table td{padding:8px 16px}.site-images-table td:before{content:attr(data-label);display:block;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--ink-soft);margin-bottom:4px}.site-image-thumb{width:100%;max-width:320px}}.account-actions{display:flex;align-items:center;gap:16px}.account-site-link,.account-shell .vendor-header-badge{display:none}@media (max-width: 767px){.account-site-link{display:inline}.account-shell .account-actions .text-link{position:relative}.account-shell .account-actions .text-link:after{content:"";position:absolute;top:-13px;right:-8px;bottom:-13px;left:-8px}.account-shell .admin-nav[data-more-after]{-webkit-mask-image:linear-gradient(to right,black calc(100% - 48px),transparent);mask-image:linear-gradient(to right,black calc(100% - 48px),transparent)}.account-shell .admin-nav[data-more-before]{-webkit-mask-image:linear-gradient(to left,black calc(100% - 48px),transparent);mask-image:linear-gradient(to left,black calc(100% - 48px),transparent)}.account-shell .admin-nav[data-more-before][data-more-after]{-webkit-mask-image:linear-gradient(to right,transparent,black 48px,black calc(100% - 48px),transparent);mask-image:linear-gradient(to right,transparent,black 48px,black calc(100% - 48px),transparent)}.account-shell .vendor-header-status{display:none}.account-shell .vendor-header-badge{display:inline-flex}.account-shell .admin-account>span:first-child{overflow-wrap:anywhere}.account-shell .event-detail-meta dt,.account-shell .event-detail-meta dd{overflow-wrap:anywhere}.account-shell .admin-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}.account-shell .admin-photo-thumb{width:100%;height:auto;aspect-ratio:1}}.partner-actions{display:grid;grid-template-columns:repeat(2,max-content);gap:6px}.partner-actions .button{padding:6px 12px;font-size:var(--text-sm)}.partner-generated{font-size:var(--text-lg);margin:0 0 16px}.partner-give-button{margin:8px 0 24px;min-width:200px;font-size:var(--text-lg)}.partner-give{margin:8px 0 32px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:12px}.partner-give h2{margin-top:0}.partner-give-form{max-width:none;padding:0;border:0;box-shadow:none;background:transparent}.partner-give-rows{display:grid;gap:10px}.partner-give-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1.2fr) auto;gap:10px;align-items:center}.partner-give-head{font-size:var(--text-sm);font-weight:600;color:var(--ink-soft)}.partner-give-row.has-error input:not([readonly]){border-color:var(--danger)}.partner-give-form .partner-readonly{background:var(--cream-deep);color:var(--ink-soft);cursor:default}.partner-row-error{grid-column:1 / -1;margin:0;font-size:var(--text-sm)}.partner-add-row{margin-top:12px;min-width:48px;font-size:var(--text-xl);line-height:1}.partner-success{font-weight:600}@media (max-width: 640px){.partner-give-head{display:none}.partner-give-row{grid-template-columns:1fr;padding-bottom:12px;border-bottom:1px solid var(--line)}}.partner-table-wrap{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}.admin-table .partner-code{white-space:nowrap;overflow-wrap:normal;width:auto}.partner-give-form .partner-add-row{align-self:flex-start;padding:6px 18px}.partner-no-coupons{margin:8px 0 24px;padding:14px 16px;border-radius:12px;background:var(--status-warning-container);color:var(--ink);font-weight:600}.partner-give-form select{width:100%}.partner-row-givable{cursor:pointer}.partner-give-link{background:none;border:0;padding:0;font:inherit;color:var(--brand-teal);text-decoration:underline;cursor:pointer}.partner-give-link:focus-visible{outline:2px solid var(--brand-teal);outline-offset:2px;border-radius:2px}.partner-contact-notice{margin:8px 0 12px;padding:14px 16px;border-radius:12px;background:var(--status-warning-container);color:var(--ink)}.partner-contact-notice p{margin:0;font-weight:600}.partner-contact-lines{display:flex;flex-direction:column;gap:4px;margin-top:8px!important;font-weight:500!important}.partner-contact-lines a{color:var(--brand-teal);font-weight:600}.partner-tabs{display:flex;gap:8px;margin:8px 0 24px;overflow-x:auto;scrollbar-width:none}.partner-tabs::-webkit-scrollbar{display:none}.partner-tabs button{flex:0 0 auto;padding:8px 22px;min-height:44px;border:1.5px solid var(--border-strong);border-radius:var(--radius-pill);background:transparent;color:var(--ink);font-weight:600;cursor:pointer;font-size:var(--text-md)}.partner-tabs button.is-active{background:var(--brand-teal);border-color:var(--brand-teal);color:#fff}.partner-payout-eligible{margin:0 0 8px;padding:14px 16px;border-radius:12px;background:var(--status-success-container);color:var(--ink);font-weight:600}.partner-payout-note{margin:0 0 8px;padding:14px 16px;border-radius:12px;background:var(--cream-deep);color:var(--ink);font-weight:600}.partner-payout-rules{margin:0 0 24px;font-size:var(--text-sm)}.partner-payout-methods{display:grid;grid-template-columns:1fr;gap:16px;margin:12px 0 28px}.partner-payout-card{padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:12px}.partner-payout-card h4{margin:0 0 12px;font-size:var(--text-lg)}.partner-payout-card dl{display:grid;gap:8px;margin:0}.partner-payout-card dl div{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.partner-payout-card dt{color:var(--ink-soft);font-size:var(--text-sm)}.partner-payout-card dd{margin:0;font-weight:600;overflow-wrap:anywhere}.partner-payout-saved{margin:12px 0 0;font-size:var(--text-sm)}.partner-payout-form{max-width:none;padding:0;border:0;box-shadow:none;background:transparent}@media (min-width: 900px){.partner-payout-methods{grid-template-columns:1fr 1fr}}.partner-payout-destination{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;font-weight:400;overflow-wrap:anywhere}.partner-payout-destination input{margin-top:4px}.partner-payout-confirm{display:flex;gap:10px;align-items:flex-start;margin:16px 0 8px;font-weight:600}.partner-payout-confirm input{margin-top:4px}.partner-payout-cell{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:120px;font-size:var(--text-sm)}.partner-list-table th:last-child,.partner-list-table td:last-child{position:sticky;right:0;background:#fff;box-shadow:-8px 0 12px -10px #20242a40}.partner-list-table thead th:last-child{background:var(--cream-deep);z-index:2}.admin-table.partner-list-table{overflow:visible}.partner-name-cell{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.partner-list-table th,.partner-list-table td{padding-left:12px;padding-right:12px}.partner-capabilities{display:grid;gap:8px;margin:8px 0 20px}.partner-code-actions{display:flex;flex-wrap:wrap;gap:6px}.creator-code-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface, #fff);padding:16px;margin:12px 0}.creator-code-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}.creator-code-value{font:700 1.5rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em;color:var(--brand-primary, #7B1E2B)}.creator-code-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.tshirt-promo{margin:16px 0 8px}.tshirt-promo label{display:block;font-weight:600;margin-bottom:6px}.tshirt-promo-row{display:flex;gap:8px}.tshirt-promo-row input{flex:1 1 auto;min-width:0;text-transform:uppercase}.tshirt-promo .state,.tshirt-promo .muted{margin:6px 0 0;padding:0;border:0;font-size:var(--text-sm, 14px)}.more-page{max-width:720px;margin:0 auto;padding:24px var(--gutter) 48px;min-height:calc(100vh - 74px)}.more-page h1{font:600 clamp(28px,6vw,40px)/1.1 "Playfair Display",serif;margin:0 0 8px}.more-group{margin-top:22px}.more-group h2{margin:0 0 8px 4px;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}.more-group ul{list-style:none;margin:0;padding:0;background:var(--surface-primary);border:1px solid var(--line);border-radius:var(--radius-card);overflow:hidden}.more-group li+li{border-top:1px solid var(--line)}.more-link{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:12px 16px;font-size:var(--text-lg);color:var(--ink)}.more-link svg{flex-shrink:0;color:var(--ink-soft)}.more-link:hover{background:var(--cream-deep);color:var(--brand-primary)}.more-link:focus-visible{outline-offset:-3px}@media (min-width: 768px){.quick,.bishops-band,.columns,.live-status,.about-preview,.history-preview,.experience,.visit,.prayer-cta,.media-preview,.emergency-cta,.placeholder,.map-toolbar{padding-left:8vw;padding-right:8vw}}@media (min-width: 1024px){.header,.hero,.quick,.bishops-band,.columns,.live-status,.about-preview,.history-preview,.experience,.visit,.prayer-cta,.media-preview,.emergency-cta,footer,.admin-header,.program-hero,.day-tabs,.program-body,.event-detail,.placeholder,.map-toolbar{padding-left:10vw;padding-right:10vw}}@media (min-width: 1024px) and (max-width: 1279px){.header{padding-left:var(--gutter);padding-right:var(--gutter);gap:12px}.primary-nav{gap:18px}.header-actions{gap:8px}}@media (min-width: 1280px){.header,.hero,.quick,.bishops-band,.columns,.live-status,.about-preview,.history-preview,.experience,.visit,.prayer-cta,.media-preview,.emergency-cta,footer,.admin-header,.program-hero,.day-tabs,.program-body,.event-detail,.placeholder,.map-toolbar{padding-left:12vw;padding-right:12vw}}@media (min-width: 1440px){.header,.hero,.quick,.bishops-band,.columns,.live-status,.about-preview,.history-preview,.experience,.visit,.prayer-cta,.media-preview,.emergency-cta,footer,.admin-header,.program-hero,.day-tabs,.program-body,.event-detail,.placeholder,.map-toolbar{padding-left:max(14vw,calc((100vw - 1200px)/2));padding-right:max(14vw,calc((100vw - 1200px)/2))}}@media (min-width: 1280px) and (max-width: 1599px){.header{padding-left:var(--gutter);padding-right:var(--gutter);gap:12px}.primary-nav{gap:18px}.header-actions{gap:8px}}
