*{box-sizing:border-box}
:root{
    --bg:#07060b;
    --panel:#100813;
    --panel2:#18031c;
    --gold:#e5b927;
    --gold2:#ffd900;
    --purple:#5c075d;
    --magenta:#a50080;
    --text:#f4f1f5;
    --muted:#c9c4cb;
}
html{scroll-behavior:smooth}
body{
    margin:0;
    background:
        radial-gradient(circle at 50% -10%,rgba(92,7,93,.28),transparent 34%),
        linear-gradient(180deg,#100015 0%,#050409 62%,#100015 100%);
    color:var(--text);
    font-family:Arial,Helvetica,sans-serif;
}
a{color:inherit}
.site-shell{
    width:min(1540px,calc(100% - 20px));
    margin:10px auto 22px;
    border:1px solid #a88300;
    background:rgba(4,4,8,.94);
    box-shadow:0 0 28px rgba(146,0,124,.17);
}
.site-header{border-bottom:1px solid var(--gold)}
.brand-banner{
    width:100%;
    display:block;
    aspect-ratio:7.25/1;
    object-fit:cover;
    object-position:center;
}
.main-nav{
    background:#07070b;
    border-top:1px solid #6d5400;
}
.menu{
    display:flex;
    align-items:stretch;
    justify-content:center;
}
.menu>a,.nav-group>button{
    appearance:none;
    border:0;
    background:transparent;
    color:var(--gold2);
    text-decoration:none;
    text-transform:uppercase;
    font-size:13px;
    padding:17px 24px;
    cursor:pointer;
    white-space:nowrap;
}
.menu>a:hover,.nav-group>button:hover,.menu>a.active{
    background:linear-gradient(180deg,#4e064f,#220126);
    box-shadow:inset 0 -2px 0 var(--magenta);
}
.nav-group{position:relative}
.dropdown{
    display:none;
    position:absolute;
    top:100%;
    left:0;
    min-width:235px;
    z-index:30;
    background:#0d0910;
    border:1px solid #9e7800;
    box-shadow:0 10px 24px rgba(0,0,0,.55);
}
.dropdown-right{left:auto;right:0}
.dropdown a{
    display:block;
    padding:13px 16px;
    color:#f0cf36;
    text-decoration:none;
    border-bottom:1px solid rgba(229,185,39,.16);
}
.dropdown a:hover{background:#330432}
.nav-group:hover .dropdown,.nav-group.open .dropdown{display:block}
.nav-toggle{display:none}

.hero{
    min-height:430px;
    position:relative;
    background:
        linear-gradient(90deg,rgba(4,3,8,.96) 0%,rgba(4,3,8,.72) 34%,rgba(4,3,8,.20) 62%,rgba(4,3,8,.55) 100%),
        radial-gradient(circle at 73% 45%,rgba(124,63,0,.24),transparent 35%),
        linear-gradient(135deg,#18021c,#08080d 55%,#1c0910);
    border-bottom:1px solid #6e5600;
}
.hero-overlay{
    min-height:430px;
    display:flex;
    align-items:center;
    padding:50px clamp(30px,5vw,80px);
}
.hero-copy{max-width:620px}
.eyebrow{
    color:#f1c82d;
    letter-spacing:2px;
    font-size:12px;
    margin-bottom:12px;
}
.hero h1{
    margin:0 0 18px;
    color:#e9c03b;
    font-family:Georgia,"Times New Roman",serif;
    font-weight:normal;
    font-size:clamp(39px,5vw,70px);
    line-height:1.05;
    text-shadow:0 3px 6px #000;
}
.hero p{
    max-width:570px;
    font-size:18px;
    line-height:1.65;
    color:#e5e1e7;
}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:25px}
.btn{
    display:inline-block;
    padding:14px 22px;
    text-transform:uppercase;
    text-decoration:none;
    color:#ffe52c;
    border:1px solid #d5a700;
    border-radius:5px;
    font-size:13px;
    font-weight:bold;
}
.btn-purple{background:linear-gradient(180deg,#5a075c,#280127)}
.btn-gold{background:rgba(0,0,0,.35)}
.section-wrap{width:min(1440px,calc(100% - 48px));margin:0 auto}
.primary-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
    margin-top:-34px;
    position:relative;
    z-index:5;
}
.feature-card{
    padding:28px 22px 24px;
    min-height:245px;
    text-align:center;
    border:1px solid #c89d00;
    border-radius:8px;
    background:
        linear-gradient(180deg,rgba(49,10,51,.72),rgba(5,6,11,.96));
    box-shadow:0 8px 25px rgba(0,0,0,.38);
}
.feature-icon{font-size:35px;filter:grayscale(1) sepia(1) saturate(6)}
.feature-card h2{
    font-family:Georgia,"Times New Roman",serif;
    color:#e9c03b;
    text-transform:uppercase;
    font-size:22px;
}
.feature-card p{color:#ddd6df;line-height:1.55}
.feature-card a{
    display:inline-block;
    margin-top:12px;
    color:#ffdf28;
    text-decoration:none;
    font-size:12px;
    font-weight:bold;
    text-transform:uppercase;
}
.why{padding:32px 0 24px}
.section-title{
    text-align:center;
    color:#e9c03b;
    font:normal 30px Georgia,"Times New Roman",serif;
    margin:0 0 22px;
}
.section-title:before,.section-title:after{content:"";display:inline-block;width:10%;height:1px;background:#8f006f;vertical-align:middle;margin:0 16px}
.why-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:1px;
    border-top:1px solid rgba(152,0,112,.65);
    border-bottom:1px solid rgba(152,0,112,.65);
}
.why-grid div{padding:22px 18px;text-align:center}
.why-grid strong{display:block;color:#e6bd31;font-family:Georgia,serif;margin-bottom:8px}
.why-grid span{color:#cfc9d1;font-size:13px;line-height:1.45}
.quick-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:8px;
    padding:20px 0;
}
.quick-card{
    min-height:135px;
    padding:18px 14px;
    text-decoration:none;
    text-align:center;
    border:1px solid #b68d00;
    background:
        radial-gradient(circle at 80% 20%,rgba(148,0,119,.18),transparent 40%),
        linear-gradient(135deg,#200524,#0a080e);
}
.quick-card:hover{box-shadow:0 0 18px rgba(209,0,169,.24)}
.quick-card span{display:block;font-size:26px;margin-bottom:8px}
.quick-card strong{display:block;color:#e8c439;font-family:Georgia,serif;font-size:17px}
.quick-card small{display:block;color:#d7d2d9;margin-top:7px}
.legacy-links{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    border-top:1px solid #856900;
    border-bottom:1px solid #8d006d;
}
.legacy-links a{
    padding:17px 10px;
    text-align:center;
    text-decoration:none;
    color:#e7c53c;
    font-family:Georgia,serif;
    border-right:1px solid rgba(218,172,0,.45);
}
.legacy-links a:last-child{border-right:0}
.legacy-links a:hover{background:#28042b}
.site-footer{padding-top:22px;background:linear-gradient(180deg,#06050a,#100014)}
.footer-grid{
    width:min(1200px,calc(100% - 48px));
    margin:auto;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:28px;
    padding:12px 0 25px;
}
.footer-grid h3{margin:0 0 8px;color:#e6bd31;font:normal 20px Georgia,serif}
.footer-grid p{margin:0;color:#c8c3ca;line-height:1.5;font-size:13px}
.footer-bottom{
    border-top:1px solid #820064;
    padding:16px;
    text-align:center;
    color:#a9a5ab;
    font-size:12px;
}
@media(max-width:1050px){
    .menu>a,.nav-group>button{padding:15px 12px;font-size:12px}
    .primary-grid{grid-template-columns:repeat(2,1fr)}
    .why-grid{grid-template-columns:repeat(3,1fr)}
    .quick-grid{grid-template-columns:repeat(2,1fr)}
    .legacy-links{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
    .site-shell{width:100%;margin:0;border-left:0;border-right:0}
    .brand-banner{aspect-ratio:auto;min-height:150px;object-fit:cover}
    .nav-toggle{
        display:block;width:100%;padding:15px;border:0;background:#09070c;
        color:#f6d128;font-weight:bold;border-bottom:1px solid #8e6e00
    }
    .menu{display:none;flex-direction:column}
    .menu.open{display:flex}
    .menu>a,.nav-group>button{display:block;width:100%;text-align:left;padding:13px 18px}
    .nav-group:hover .dropdown{display:none}
    .nav-group.open .dropdown{display:block}
    .dropdown,.dropdown-right{position:static;min-width:0;border-left:0;border-right:0}
    .hero,.hero-overlay{min-height:390px}
    .hero-overlay{padding:38px 24px}
    .primary-grid{grid-template-columns:1fr;margin-top:18px}
    .why-grid,.quick-grid,.legacy-links,.footer-grid{grid-template-columns:1fr}
    .section-wrap{width:calc(100% - 28px)}
    .section-title:before,.section-title:after{display:none}
}


/* BUILD 003 - HERO SLIDESHOW */
.hero-slider{position:relative;min-height:520px;overflow:hidden;background:#06050a}
.hero-slides,.hero-slide,.hero-shade{position:absolute;inset:0}
.hero-slide{
    opacity:0;background-position:center;background-size:cover;background-repeat:no-repeat;
    transition:opacity 1.1s ease-in-out,transform 6s ease;transform:scale(1.015)
}
.hero-slide.active{opacity:1;transform:scale(1.045)}
.hero-shade{
    z-index:1;pointer-events:none;
    background:
      linear-gradient(90deg,rgba(3,3,8,.98) 0%,rgba(3,3,8,.93) 24%,rgba(3,3,8,.68) 39%,rgba(3,3,8,.20) 59%,rgba(3,3,8,.10) 78%,rgba(3,3,8,.28) 100%),
      linear-gradient(180deg,rgba(0,0,0,.10) 0%,rgba(0,0,0,.04) 68%,rgba(0,0,0,.65) 100%)
}
.hero-slider .hero-overlay{position:relative;z-index:3;min-height:520px;padding-bottom:120px}
.hero-arrow{
    position:absolute;z-index:7;top:48%;width:46px;height:46px;border:1px solid #d5a700;
    border-radius:50%;background:rgba(0,0,0,.67);color:#ffd900;font-size:25px;cursor:pointer;
    transform:translateY(-50%);transition:.2s ease
}
.hero-arrow:hover{background:#37043a;box-shadow:0 0 16px rgba(209,0,169,.30)}
.hero-prev{left:16px}.hero-next{right:16px}
.hero-dots{position:absolute;z-index:7;left:50%;bottom:88px;display:flex;gap:10px;transform:translateX(-50%)}
.hero-dot{width:12px;height:12px;padding:0;border:1px solid rgba(255,255,255,.85);border-radius:50%;background:#d8d8d8;cursor:pointer}
.hero-dot.active{background:#f2c21b;border-color:#f2c21b;box-shadow:0 0 10px rgba(242,194,27,.35)}
.hero-thumbnails{position:absolute;z-index:6;right:34px;bottom:18px;display:flex;gap:9px}
.hero-thumb{
    width:122px;height:68px;padding:2px;border:1px solid #9f7900;border-radius:5px;
    background:#06050a;cursor:pointer;opacity:.76;overflow:hidden;transition:.2s ease
}
.hero-thumb img{width:100%;height:100%;display:block;object-fit:cover}
.hero-thumb:hover,.hero-thumb.active{opacity:1;border-color:#ffd900;box-shadow:0 0 12px rgba(255,217,0,.24)}
@media(max-width:760px){
    .hero-slider,.hero-slider .hero-overlay{min-height:470px}
    .hero-slider .hero-overlay{padding-bottom:100px}
    .hero-shade{background:linear-gradient(90deg,rgba(3,3,8,.94),rgba(3,3,8,.60)),linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.58))}
    .hero-arrow{width:38px;height:38px;font-size:20px}
    .hero-prev{left:8px}.hero-next{right:8px}
    .hero-thumbnails{left:50%;right:auto;bottom:14px;width:calc(100% - 78px);justify-content:center;transform:translateX(-50%)}
    .hero-thumb{width:31%;max-width:110px;height:58px}
    .hero-dots{bottom:82px}
}


/* BUILD 006 - five hero thumbnails */
.hero-thumbnails{
    max-width:720px;
}
.hero-thumb{
    width:112px;
    height:63px;
}
@media(max-width:760px){
    .hero-thumbnails{
        overflow-x:auto;
        justify-content:flex-start;
        scrollbar-width:thin;
    }
    .hero-thumb{
        flex:0 0 92px;
        width:92px;
        height:52px;
    }
}


/* BUILD 008 - compact hero wording at top of slideshow */
.hero-slider .hero-overlay{
    min-height:520px;
    padding:0;
}

.hero-slider .hero-copy{
    position:absolute;
    top:28px;
    left:78px;
    right:78px;
    max-width:none;
    padding:0;
}

.hero-slider .hero-copy .eyebrow{
    margin-bottom:8px;
    font-size:12px;
    letter-spacing:2px;
}

.hero-slider .hero-copy h1{
    max-width:1050px;
    margin:0;
    font-size:clamp(26px, 2.45vw, 42px);
    line-height:1.12;
    text-shadow:0 2px 8px rgba(0,0,0,.95);
}

.hero-slider .hero-actions{
    margin-top:18px;
}

/* Give the upper part of each photograph enough contrast for the wording. */
.hero-slider .hero-shade{
    background:
      linear-gradient(180deg,
        rgba(0,0,0,.78) 0%,
        rgba(0,0,0,.48) 22%,
        rgba(0,0,0,.12) 48%,
        rgba(0,0,0,.12) 72%,
        rgba(0,0,0,.62) 100%),
      linear-gradient(90deg,
        rgba(3,3,8,.42) 0%,
        rgba(3,3,8,.16) 48%,
        rgba(3,3,8,.08) 100%);
}

@media(max-width:760px){
    .hero-slider .hero-copy{
        top:22px;
        left:55px;
        right:55px;
    }
    .hero-slider .hero-copy h1{
        font-size:clamp(22px, 7vw, 31px);
        line-height:1.14;
    }
    .hero-slider .hero-copy .eyebrow{
        font-size:10px;
    }
}


/* BUILD 010 - hero text refinement and section spacing */

/* Make the hero headline a little smaller so the photo remains dominant. */
.hero-slider .hero-copy h1{
    max-width:980px;
    font-size:clamp(22px, 2vw, 34px);
    line-height:1.16;
}

/* Give the hero slideshow and the main feature tiles clear breathing room. */
.primary-grid{
    margin-top:28px;
}

/* Keep the thumbnail strip comfortably inside the hero area. */
.hero-thumbnails{
    bottom:20px;
}

/* Slightly raise the dots so they don't feel crowded by the thumbnails. */
.hero-dots{
    bottom:94px;
}

@media(max-width:760px){
    .hero-slider .hero-copy h1{
        font-size:clamp(20px, 6vw, 27px);
        line-height:1.16;
    }

    .primary-grid{
        margin-top:22px;
    }

    .hero-dots{
        bottom:80px;
    }
}


/* =========================================================
   BUILD 013 - OPTIONAL HOMEPAGE AUDIO INTRODUCTION
   ========================================================= */
.audio-intro{
    margin-top:22px;
    margin-bottom:4px;
    display:grid;
    grid-template-columns:minmax(320px, 1fr) minmax(520px, 1.35fr);
    gap:24px;
    align-items:center;
    padding:20px 24px;
    border:1px solid #b68d00;
    border-radius:8px;
    background:
        radial-gradient(circle at 15% 0%,rgba(139,0,116,.24),transparent 40%),
        linear-gradient(135deg,rgba(34,4,38,.97),rgba(7,7,12,.98));
    box-shadow:0 8px 24px rgba(0,0,0,.30);
}

.audio-intro-copy{
    display:flex;
    align-items:center;
    gap:16px;
}

.audio-symbol{
    flex:0 0 58px;
    width:58px;
    height:58px;
    display:grid;
    place-items:center;
    border:1px solid #e4b800;
    border-radius:50%;
    color:#ffd900;
    font:normal 31px Georgia,serif;
    background:linear-gradient(180deg,#4a064d,#170119);
    box-shadow:0 0 16px rgba(177,0,144,.18);
}

.audio-kicker{
    margin-bottom:4px;
    color:#ffd62b;
    font-size:10px;
    font-weight:bold;
    letter-spacing:1.8px;
}

.audio-intro h2{
    margin:0;
    color:#e8c23b;
    font:normal 22px Georgia,"Times New Roman",serif;
}

.audio-intro p{
    margin:6px 0 0;
    color:#cfc9d1;
    font-size:12px;
    line-height:1.45;
}

.audio-player{
    display:grid;
    grid-template-columns:auto minmax(250px,1fr) auto;
    gap:16px;
    align-items:center;
}

.audio-main-btn,
.audio-icon-btn{
    border:1px solid #d5a700;
    color:#ffe32d;
    background:linear-gradient(180deg,#56075a,#240126);
    cursor:pointer;
}

.audio-main-btn{
    min-width:170px;
    padding:12px 15px;
    border-radius:5px;
    font-size:12px;
    font-weight:bold;
    text-transform:uppercase;
    white-space:nowrap;
}

.audio-main-btn:hover,
.audio-icon-btn:hover{
    background:linear-gradient(180deg,#700977,#310135);
    box-shadow:0 0 14px rgba(184,0,148,.23);
}

.audio-play-icon{
    margin-right:7px;
}

.audio-progress-wrap{
    display:grid;
    grid-template-columns:38px 1fr 38px;
    gap:9px;
    align-items:center;
    color:#d7d2d9;
    font-size:11px;
}

.audio-progress,
.audio-volume{
    width:100%;
    accent-color:#d7aa00;
    cursor:pointer;
}

.audio-volume-wrap{
    display:flex;
    align-items:center;
    gap:7px;
}

.audio-icon-btn{
    width:38px;
    height:36px;
    padding:0;
    border-radius:5px;
    font-size:16px;
}

.audio-volume{
    width:78px;
}

@media(max-width:1000px){
    .audio-intro{
        grid-template-columns:1fr;
    }
}

@media(max-width:760px){
    .audio-intro{
        width:calc(100% - 28px);
        padding:18px;
        gap:18px;
    }

    .audio-intro-copy{
        align-items:flex-start;
    }

    .audio-symbol{
        flex-basis:48px;
        width:48px;
        height:48px;
        font-size:25px;
    }

    .audio-intro h2{
        font-size:19px;
    }

    .audio-player{
        grid-template-columns:1fr;
        gap:12px;
    }

    .audio-main-btn{
        width:100%;
    }

    .audio-volume-wrap{
        justify-content:center;
    }
}

/* =========================================================
   BUILD 014 - COMPACT AUDIO PLAYER INSIDE HERO
   ========================================================= */
.audio-intro{display:none !important;}
.hero-audio{
    position:absolute;
    z-index:8;
    left:34px;
    bottom:20px;
    width:min(610px,calc(100% - 820px));
    min-width:420px;
    padding:10px 13px 11px;
    border:1px solid rgba(213,167,0,.78);
    border-radius:6px;
    background:linear-gradient(135deg,rgba(8,6,10,.88),rgba(35,2,37,.82));
    box-shadow:0 5px 18px rgba(0,0,0,.35);
    backdrop-filter:blur(3px);
}
.hero-audio-title{
    margin-bottom:7px;
    color:#e9c03b;
    font-family:Georgia,"Times New Roman",serif;
    font-size:15px;
    letter-spacing:.25px;
    text-shadow:0 2px 5px #000;
}
.hero-audio-controls{
    display:grid;
    grid-template-columns:auto 34px minmax(120px,1fr) 34px 34px 72px;
    gap:7px;
    align-items:center;
    color:#e9c03b;
    font-size:11px;
}
.hero-audio .audio-main-btn{
    min-width:72px;
    padding:7px 10px;
    font-size:10px;
}
.hero-audio .audio-icon-btn{width:32px;height:30px;font-size:13px;}
.hero-audio .audio-volume{width:72px;}
.hero-audio .audio-progress{min-width:0;}

@media(max-width:1150px){
    .hero-audio{width:430px;min-width:0;}
}
@media(max-width:760px){
    .hero-audio{
        left:14px;
        right:14px;
        bottom:78px;
        width:auto;
        min-width:0;
        padding:8px 10px;
    }
    .hero-audio-title{font-size:13px;margin-bottom:5px;}
    .hero-audio-controls{grid-template-columns:auto 30px minmax(80px,1fr) 30px 30px;gap:5px;}
    .hero-audio .audio-volume{display:none;}
    .hero-audio .audio-main-btn{width:auto;min-width:62px;padding:6px 8px;}
}

/* =========================================================
   BUILD 015 - HOMEPAGE SHOWCASE CARDS
   ========================================================= */
.home-showcase{padding-top:42px;padding-bottom:46px;}
.showcase-heading{text-align:center;max-width:850px;margin:0 auto 25px;}
.showcase-heading .eyebrow{color:#d9ad13;letter-spacing:2px;font-size:11px;font-weight:700;}
.showcase-heading .section-title{margin:5px 0 8px;}
.showcase-heading p{margin:0;color:#c9c2ca;line-height:1.6;font-size:14px;}
.showcase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.showcase-card{display:block;overflow:hidden;border:1px solid #b68d00;border-radius:8px;background:linear-gradient(145deg,#240225,#0a090d);box-shadow:0 8px 22px rgba(0,0,0,.28);text-decoration:none;color:inherit;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
a.showcase-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.38);border-color:#e3bd27;}
.showcase-wide{grid-column:1/-1;}
.showcase-image{height:220px;background:#09090b;overflow:hidden;}
.showcase-image img{width:100%;height:100%;object-fit:cover;display:block;}
.showcase-split{display:grid;grid-template-columns:1fr 1fr;height:260px;background:#08080a;}
.showcase-split img{width:100%;height:100%;object-fit:cover;display:block;}
.showcase-split img+img{border-left:1px solid #b68d00;}
.showcase-body{padding:18px 20px 20px;}
.showcase-body h3{margin:0 0 7px;color:#e8c23b;font:700 23px Georgia,"Times New Roman",serif;}
.showcase-body p{margin:0 0 13px;color:#d4ced6;font-size:13px;line-height:1.55;}
.showcase-link,.showcase-status{display:inline-block;color:#ffe02b;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.45px;}
.showcase-placeholder{height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:radial-gradient(circle at 50% 20%,rgba(118,0,105,.30),transparent 45%),linear-gradient(145deg,#1e0220,#08080b);color:#e8c23b;}
.showcase-placeholder span{font-size:52px;line-height:1;}
.showcase-placeholder b{padding:7px 12px;border:1px solid rgba(218,174,16,.65);border-radius:4px;font-size:12px;letter-spacing:1.8px;}
@media(max-width:850px){.showcase-grid{grid-template-columns:1fr}.showcase-wide{grid-column:auto}.showcase-split{height:auto;grid-template-columns:1fr}.showcase-split img{height:220px}.showcase-split img+img{border-left:0;border-top:1px solid #b68d00}}


/* =========================================================
   BUILD 017 - MATCH MAIN HEADER TO DIGITAL MEMORIES HEADER
   ========================================================= */

/* Give the banner the same deep purple framing and stronger gold border
   used on the existing Digital Memories page. */
.site-header{
    background:#17001f;
    border-bottom:1px solid #d3a800;
    padding:6px 6px 0;
}

.brand-banner{
    width:100%;
    display:block;
    border:2px solid #d6ad00;
    outline:2px solid #5d0068;
    outline-offset:2px;
    box-shadow:
        0 0 0 1px #120016,
        inset 0 0 0 1px rgba(255,216,0,.35),
        0 0 12px rgba(125,0,125,.22);
}

/* Keep the navigation aligned cleanly beneath the framed banner. */
.main-nav{
    margin-top:6px;
    border-top:1px solid #8a6800;
    border-left:1px solid #d6ad00;
    border-right:1px solid #d6ad00;
    border-bottom:1px solid #d6ad00;
}

/* Slightly stronger outer gold treatment on the site frame so the
   top section visually matches the existing Digital Memories page. */
.site-shell{
    border:2px solid #d6ad00;
    box-shadow:
        0 0 0 2px #5d0068,
        0 0 0 4px #120016,
        0 0 24px rgba(146,0,124,.18);
}

@media(max-width:760px){
    .site-header{
        padding:4px 4px 0;
    }

    .brand-banner{
        outline-width:1px;
        outline-offset:1px;
    }

    .site-shell{
        border-left:0;
        border-right:0;
        box-shadow:none;
    }
}

/* =========================================================
   BUILD 018 - BRAND BANNER / TIGHTER FRAME / COMPACT SHOWCASE
   ========================================================= */

/* 1) Use the full new Hoffanhein Lodge banner without cropping it. */
.brand-banner{
    aspect-ratio:auto;
    height:auto;
    object-fit:contain;
    object-position:center;
}

/* 2) Give the desktop layout a little breathing room at the sides.
      Build 020 keeps the site centred at 78% of the browser width. */
.site-shell{
    width:78%;
    max-width:none;
    margin:10px auto 22px;
}

/* 3) Compact Explore More cards so the full set can sit in one desktop row.
      auto-fit also allows a sixth card to join the row when it is added. */
.home-showcase{
    padding-top:34px;
    padding-bottom:38px;
}
.showcase-heading{
    margin-bottom:18px;
}
.showcase-grid{
    grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
    gap:12px;
    align-items:stretch;
}
.showcase-card,
.showcase-wide{
    grid-column:auto;
    min-width:0;
}
.showcase-image,
.showcase-placeholder{
    height:145px;
}
.showcase-split{
    height:145px;
    grid-template-columns:1fr 1fr;
}
.showcase-split img{
    min-width:0;
}
.showcase-body{
    padding:13px 14px 15px;
}
.showcase-body h3{
    margin-bottom:5px;
    font-size:18px;
    line-height:1.15;
}
.showcase-body p{
    margin-bottom:9px;
    font-size:11px;
    line-height:1.4;
}
.showcase-link,
.showcase-status{
    font-size:9px;
    line-height:1.3;
}
.showcase-placeholder{
    gap:9px;
}
.showcase-placeholder span{
    font-size:38px;
}
.showcase-placeholder b{
    padding:5px 9px;
    font-size:9px;
    letter-spacing:1.35px;
}

@media(max-width:1320px){
    .showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:850px){
    .showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .showcase-wide{grid-column:auto;}
    .showcase-split{height:145px;grid-template-columns:1fr 1fr;}
    .showcase-split img{height:100%;}
    .showcase-split img+img{border-left:1px solid #b68d00;border-top:0;}
}
@media(max-width:560px){
    .site-shell{width:100%;margin:0;border-left:0;border-right:0;}
    .showcase-grid{grid-template-columns:1fr;}
    .showcase-image,.showcase-placeholder,.showcase-split{height:180px;}
}


/* =========================================================
   BUILD 021 - COMPACT RESPONSIVE BRAND BANNER
   Keeps the Build 020 page width/layout unchanged.
   ========================================================= */

/* Reduce only the banner on desktop while preserving the full artwork. */
.brand-banner{
    width:85%;
    height:auto;
    margin:0 auto;
    object-fit:contain;
    object-position:center;
}

/* Tablets get a little more banner width. */
@media(max-width:900px){
    .brand-banner{
        width:92%;
    }
}

/* Phones use the available screen width and preserve the image ratio. */
@media(max-width:560px){
    .brand-banner{
        width:100%;
        min-height:0;
        height:auto;
        margin:0;
        object-fit:contain;
    }
}


/* =========================================================
   BUILD 022 - COMBINED CONTACT + REQUEST A QUOTE PAGE
   Phone / WhatsApp focused. No email field.
   ========================================================= */

/* Keep the compact landscape brand banner full-width inside the current 78% site shell. */
.brand-banner{
    width:100%;
    margin:0;
    height:auto;
    object-fit:contain;
}

.contact-page{padding-bottom:24px;}
.contact-intro{
    padding-top:44px;
    padding-bottom:28px;
    text-align:center;
    background:
      radial-gradient(circle at 50% 0%,rgba(103,0,103,.22),transparent 45%),
      linear-gradient(180deg,#09070c,#050509);
}
.contact-intro .eyebrow,.quote-copy .eyebrow,.contact-location .eyebrow{
    color:#d9ad13;
    font-size:11px;
    font-weight:800;
    letter-spacing:2.2px;
}
.contact-intro h1{
    margin:7px 0 10px;
    color:#e8c23b;
    font:700 clamp(30px,3.1vw,48px) Georgia,"Times New Roman",serif;
    text-shadow:0 3px 10px #000;
}
.contact-intro p{
    max-width:850px;
    margin:0 auto;
    color:#d8d1dc;
    font-size:14px;
    line-height:1.65;
}
.contact-quick{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    padding-top:20px;
    padding-bottom:20px;
}
.contact-action-card{
    display:flex;
    align-items:center;
    gap:16px;
    min-height:120px;
    padding:20px 22px;
    border:1px solid #b68d00;
    border-radius:9px;
    background:linear-gradient(145deg,#240225,#09080c);
    color:#fff;
    text-decoration:none;
    box-shadow:0 8px 22px rgba(0,0,0,.28);
    transition:.2s ease;
}
.contact-action-card:hover{
    transform:translateY(-2px);
    border-color:#f2c21b;
    box-shadow:0 12px 28px rgba(0,0,0,.38),0 0 16px rgba(242,194,27,.08);
}
.contact-action-card.whatsapp{background:linear-gradient(145deg,#18031c,#07130d);}
.contact-action-icon{
    flex:0 0 64px;
    width:64px;
    height:64px;
    display:grid;
    place-items:center;
    border:1px solid #d6ad00;
    border-radius:50%;
    color:#f2c21b;
    font-size:30px;
    background:#09070c;
    box-shadow:0 0 14px rgba(242,194,27,.13);
}
.contact-action-copy{display:flex;flex-direction:column;gap:5px;min-width:0;}
.contact-action-copy strong{color:#e8c23b;font:700 23px Georgia,"Times New Roman",serif;}
.contact-action-copy small{color:#cfc8d0;font-size:12px;}
.contact-action-copy b{color:#ffe02b;font-size:12px;text-transform:uppercase;letter-spacing:.45px;}

.quote-section{
    display:grid;
    grid-template-columns:minmax(280px,.85fr) minmax(420px,1.25fr);
    gap:26px;
    align-items:start;
    padding-top:30px;
    padding-bottom:34px;
}
.quote-copy{
    padding:25px;
    border:1px solid #8e6d00;
    border-radius:10px;
    background:linear-gradient(160deg,#1d031f,#09080d);
}
.quote-copy h2,.contact-location h2{
    margin:6px 0 10px;
    color:#e8c23b;
    font:700 32px Georgia,"Times New Roman",serif;
}
.quote-copy>p{margin:0;color:#d2ccd5;font-size:13px;line-height:1.65;}
.quote-benefits{display:grid;gap:12px;margin-top:22px;}
.quote-benefits>div{display:flex;gap:11px;align-items:flex-start;padding-top:12px;border-top:1px solid rgba(214,173,0,.2);}
.quote-benefits span{color:#ffe02b;font-size:18px;font-weight:800;line-height:1.2;}
.quote-benefits p{margin:0;color:#cfc9d1;font-size:12px;line-height:1.45;}
.quote-benefits strong{color:#e8c23b;}
.quote-form{
    padding:25px;
    border:1px solid #b68d00;
    border-radius:10px;
    background:linear-gradient(145deg,#170019,#08070b);
    box-shadow:0 12px 30px rgba(0,0,0,.28);
}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 16px;}
.form-grid label{display:flex;flex-direction:column;gap:7px;color:#e7e1e8;font-size:12px;font-weight:700;}
.form-grid label span{color:#f2c21b;}
.form-grid .full{grid-column:1/-1;}
.form-grid input,.form-grid select,.form-grid textarea{
    width:100%;
    border:1px solid #66520a;
    border-radius:5px;
    outline:0;
    padding:11px 12px;
    background:#07070a;
    color:#fff;
    font:inherit;
    font-weight:400;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.015);
}
.form-grid textarea{resize:vertical;min-height:110px;}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#e2b817;box-shadow:0 0 0 2px rgba(226,184,23,.12);}
.quote-submit{margin-top:18px;min-height:46px;}
.form-note{margin:10px 0 0;color:#a9a1ab;font-size:10px;line-height:1.5;}
.contact-location{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    margin-top:8px;
    margin-bottom:20px;
    padding-top:24px;
    padding-bottom:24px;
    border-top:1px solid #6d5400;
    border-bottom:1px solid #6d5400;
    background:linear-gradient(90deg,#110111,#07070a);
}
.contact-location p{margin:0;color:#d4ced6;font-size:13px;line-height:1.6;}
.site-footer a{color:#f1cf3b;text-decoration:none;}
.site-footer a:hover{color:#fff1a0;}

@media(max-width:900px){
    .quote-section{grid-template-columns:1fr;}
}
@media(max-width:700px){
    .contact-quick{grid-template-columns:1fr;}
    .form-grid{grid-template-columns:1fr;}
    .form-grid .full{grid-column:auto;}
    .contact-location{align-items:flex-start;flex-direction:column;}
    .contact-intro{padding-top:30px;padding-bottom:22px;}
    .contact-action-card{min-height:100px;padding:16px;}
    .contact-action-icon{flex-basis:54px;width:54px;height:54px;font-size:25px;}
    .contact-action-copy strong{font-size:20px;}
    .quote-form,.quote-copy{padding:18px;}
}


/* =========================================================
   BUILD 023 - CONTACT PAGE COMPACTION / LOCATION / FRAME FIX
   Keeps the Build 022 form dimensions and banner dimensions.
   ========================================================= */

/* Contact page only: use one clean gold/purple frame around the banner.
   The outer site shell remains unchanged. */
body.contact-screen .site-header{
    padding:5px 5px 0;
    background:#17001f;
    border-bottom:0;
}
body.contact-screen .brand-banner{
    border:1px solid #d6ad00;
    outline:0;
    box-shadow:none;
}
body.contact-screen .main-nav{
    margin-top:5px;
}

/* Save vertical room in the page heading without changing its identity. */
.contact-page{padding-bottom:8px;}
.contact-intro{
    padding-top:32px;
    padding-bottom:18px;
}
.contact-intro h1{margin:5px 0 7px;}
.contact-intro p{line-height:1.5;}

/* Smaller quick-contact tiles. */
.contact-quick{
    gap:12px;
    padding-top:14px;
    padding-bottom:14px;
}
.contact-action-card{
    min-height:88px;
    padding:13px 17px;
    gap:13px;
}
.contact-action-icon{
    flex-basis:50px;
    width:50px;
    height:50px;
    font-size:24px;
}
.contact-action-copy{gap:3px;}
.contact-action-copy strong{font-size:19px;}
.contact-action-copy small,.contact-action-copy b{font-size:10px;}

/* Keep the actual form the same size, but make the information tile and
   surrounding spacing more compact. */
.quote-section{
    gap:20px;
    padding-top:18px;
    padding-bottom:20px;
}
.quote-copy{
    padding:18px 20px;
}
.quote-copy h2{
    margin:4px 0 7px;
    font-size:27px;
}
.quote-copy>p{
    font-size:12px;
    line-height:1.48;
}
.quote-benefits{
    gap:6px;
    margin-top:13px;
}
.quote-benefits>div{
    gap:8px;
    padding-top:7px;
}
.quote-benefits span{font-size:16px;}
.quote-benefits p{font-size:11px;line-height:1.32;}

/* Required marker now stays on the label line, keeping paired fields aligned. */
.form-grid label{gap:7px;}
.form-grid .field-title{
    display:block;
    min-height:15px;
    color:#e7e1e8;
    line-height:1.25;
}
.form-grid .field-title b{
    color:#f2c21b;
    font-weight:800;
}

/* Compact location strip with both map and WhatsApp sharing actions. */
.contact-location{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:16px;
    margin-top:2px;
    margin-bottom:8px;
    padding-top:13px;
    padding-bottom:13px;
}
.contact-location .eyebrow{margin-bottom:3px;}
.contact-location h2{
    margin:2px 0 4px;
    font-size:24px;
}
.contact-location p{
    font-size:11px;
    line-height:1.35;
}
.gps-line{margin-top:4px!important;color:#e6bd31!important;}
.gps-line span{user-select:all;}
.location-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:9px;
    flex-wrap:wrap;
}
.location-actions .btn{
    min-height:38px;
    padding:10px 14px;
    font-size:10px;
    white-space:nowrap;
}

/* Tighter footer: same information, substantially less scrolling. */
.site-footer{padding-top:10px;}
.footer-grid{
    padding-top:12px;
    padding-bottom:12px;
    gap:18px;
}
.footer-grid h3{
    margin-bottom:4px;
    font-size:16px;
}
.footer-grid p{
    font-size:11px;
    line-height:1.35;
}
.footer-gps{color:#c9c4cb;font-size:10px;}
.footer-bottom{
    padding-top:8px;
    padding-bottom:8px;
    font-size:10px;
}

@media(max-width:900px){
    .contact-location{grid-template-columns:1fr;}
    .location-actions{justify-content:flex-start;}
}
@media(max-width:700px){
    body.contact-screen .site-header{padding:3px 3px 0;}
    .contact-intro{padding-top:24px;padding-bottom:15px;}
    .contact-action-card{min-height:78px;padding:11px 13px;}
    .contact-action-icon{flex-basis:44px;width:44px;height:44px;font-size:21px;}
    .contact-action-copy strong{font-size:17px;}
    .quote-copy{padding:15px;}
    .contact-location{padding-top:11px;padding-bottom:11px;}
    .location-actions{width:100%;}
    .location-actions .btn{flex:1 1 190px;text-align:center;}
}

/* =========================================================
   BUILD 024 - GLOBAL BANNER FRAME + LOCATION CARD
   ========================================================= */

/* Use the same clean banner treatment on every page.  Earlier builds
   layered an outline and shadow around the image, which produced several
   visible frame lines.  Keep one gold image frame and the existing outer
   site frame only. */
.site-header{
    padding:5px 5px 0;
    background:#17001f;
    border-bottom:0;
}
.brand-banner{
    width:100%;
    height:auto;
    margin:0;
    display:block;
    object-fit:contain;
    object-position:center;
    border:1px solid #d6ad00;
    outline:0;
    box-shadow:none;
}
.main-nav{
    margin-top:5px;
}

/* Contact page location now reads as a proper compact card instead of a
   loose strip, while retaining the two location action buttons. */
.contact-location{
    border:1px solid #b68d00;
    border-radius:8px;
    background:linear-gradient(145deg,#160217,#08080b);
    padding:13px 16px;
    overflow:hidden;
}

@media(max-width:700px){
    .site-header{padding:3px 3px 0;}
    .contact-location{padding:11px 13px;}
}

/* =========================================================
   BUILD 025 - CLEAN GLOBAL FRAME + FORMAL TYPOGRAPHY
   ========================================================= */

/* Keep only two visual frames at the top of every page:
   1) one outer site frame, and 2) one banner-image frame. */
.site-shell{
    border:1px solid #d6ad00;
    box-shadow:none;
}
.site-header{
    padding:5px 5px 0;
    background:#17001f;
    border:0;
    box-shadow:none;
}
.brand-banner{
    border:1px solid #d6ad00;
    outline:0;
    box-shadow:none;
}

/* More formal site typography.  The branding banner is an image and is
   deliberately unaffected by these font rules. */
body,
button,
input,
select,
textarea{
    font-family:"Segoe UI",Tahoma,Arial,sans-serif;
}

h1,h2,h3,h4,h5,h6,
.hero h1,
.section-title,
.feature-card h2,
.quick-card strong,
.legacy-links a,
.footer-grid h3,
.showcase-body h3,
.contact-intro h1,
.contact-action-copy strong,
.quote-copy h2,
.contact-location h2{
    font-family:Cambria,Georgia,"Times New Roman",serif;
    letter-spacing:.1px;
}

.menu>a,
.nav-group>button,
.dropdown a,
.btn,
.eyebrow,
.contact-intro .eyebrow,
.quote-copy .eyebrow,
.contact-location .eyebrow{
    font-family:"Segoe UI Semibold","Segoe UI",Tahoma,Arial,sans-serif;
}

/* Slightly calmer heading weights for a more formal hospitality look. */
.hero h1,
.section-title,
.contact-intro h1,
.quote-copy h2,
.contact-location h2{
    font-weight:600;
}

@media(max-width:760px){
    .site-shell{
        border-left:0;
        border-right:0;
        box-shadow:none;
    }
    .site-header{padding:3px 3px 0;}
}

/* =========================================================
   BUILD 026 - UNIFIED FONT + PURPLE SHADED THEME
   ========================================================= */

/* The banner artwork already contains its own gold frame.  Do not add a
   second CSS frame around it.  Keep only the single outer site frame. */
.site-header{
    padding:0;
    border:0;
    background:transparent;
    box-shadow:none;
}
.brand-banner{
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
    margin:0;
}
.main-nav{
    margin-top:0;
}
body.contact-screen .site-header{
    padding:0;
    border:0;
    background:transparent;
}
body.contact-screen .brand-banner{
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
}
body.contact-screen .main-nav{
    margin-top:0;
}

/* Use the same clear, formal serif family throughout the website content.
   The text embedded in the banner image is unaffected. */
body,
button,
input,
select,
textarea,
.menu>a,
.nav-group>button,
.dropdown a,
.btn,
.eyebrow,
h1,h2,h3,h4,h5,h6,
.hero h1,
.section-title,
.feature-card h2,
.quick-card strong,
.legacy-links a,
.footer-grid h3,
.showcase-body h3,
.contact-intro h1,
.contact-action-copy strong,
.quote-copy h2,
.contact-location h2,
.contact-intro .eyebrow,
.quote-copy .eyebrow,
.contact-location .eyebrow{
    font-family:Georgia,"Times New Roman",serif;
}

/* Bring back the shaded purple depth from the earlier builds so the site
   feels warm and branded rather than flat black. */
body{
    background:
        radial-gradient(circle at 50% 0%,rgba(116,0,112,.34),transparent 40%),
        linear-gradient(180deg,#17001f 0%,#08050d 48%,#16001d 100%);
}
.site-shell{
    background:
        radial-gradient(circle at 50% 20%,rgba(85,0,86,.22),transparent 45%),
        linear-gradient(180deg,#120017 0%,#08070b 56%,#150019 100%);
}
.contact-page{
    background:
        radial-gradient(circle at 50% 8%,rgba(105,0,103,.20),transparent 38%),
        linear-gradient(180deg,rgba(24,0,30,.90),rgba(7,6,10,.98) 55%,rgba(20,0,25,.96));
}
.contact-intro{
    background:
        radial-gradient(circle at 50% 0%,rgba(126,0,120,.30),transparent 48%),
        linear-gradient(180deg,#1d0223 0%,#0b080e 100%);
}
.contact-action-card{
    background:
        radial-gradient(circle at 18% 0%,rgba(112,0,106,.24),transparent 42%),
        linear-gradient(145deg,#250428,#0b080f);
}
.contact-action-card.whatsapp{
    background:
        radial-gradient(circle at 82% 0%,rgba(79,0,78,.20),transparent 42%),
        linear-gradient(145deg,#210323,#08100d);
}
.quote-copy,
.quote-form,
.contact-location{
    background:
        radial-gradient(circle at 20% 0%,rgba(100,0,96,.20),transparent 45%),
        linear-gradient(155deg,#210324,#0a080e 72%);
}
.site-footer{
    background:
        radial-gradient(circle at 50% 0%,rgba(89,0,86,.18),transparent 45%),
        linear-gradient(180deg,#100012,#08060a 58%,#160019);
}

@media(max-width:760px){
    .site-header,
    body.contact-screen .site-header{padding:0;}
}

/* =========================================================
   BUILD 027 - CLEAN BANNER EDGE + UNIFIED READABLE TYPOGRAPHY
   ========================================================= */

/* The banner artwork was trimmed to remove the baked-in stacked top/left
   frame lines. Add one simple gold edge only; keep the banner lettering
   inside the image completely untouched. */
.site-header,
body.contact-screen .site-header{
    padding:0;
    border:0;
    outline:0;
    box-shadow:none;
    background:transparent;
}
.brand-banner,
body.contact-screen .brand-banner{
    display:block;
    width:100%;
    height:auto;
    margin:0;
    border:1px solid #d6ad00 !important;
    outline:0 !important;
    box-shadow:none !important;
    object-fit:contain;
}
.main-nav,
body.contact-screen .main-nav{margin-top:0;}

/* Use the clean, easy-to-read font treatment approved for the page copy.
   The banner itself is an image, so its original branded typography remains
   exactly as supplied. */
body,
button,
input,
select,
textarea,
.menu>a,
.nav-group>button,
.dropdown a,
.btn,
.eyebrow,
h1,h2,h3,h4,h5,h6,
.hero h1,
.section-title,
.feature-card h2,
.quick-card strong,
.legacy-links a,
.footer-grid h3,
.showcase-body h3,
.contact-intro h1,
.contact-action-copy strong,
.quote-copy h2,
.contact-location h2,
.contact-intro .eyebrow,
.quote-copy .eyebrow,
.contact-location .eyebrow{
    font-family:"Segoe UI",Tahoma,Arial,sans-serif;
}

h1,h2,h3,h4,h5,h6,
.hero h1,
.section-title,
.feature-card h2,
.quick-card strong,
.footer-grid h3,
.showcase-body h3,
.contact-intro h1,
.contact-action-copy strong,
.quote-copy h2,
.contact-location h2{
    font-weight:500;
    letter-spacing:.1px;
}

.menu>a,
.nav-group>button,
.dropdown a,
.btn,
.eyebrow,
.contact-intro .eyebrow,
.quote-copy .eyebrow,
.contact-location .eyebrow{
    font-weight:600;
}

@media(max-width:760px){
    .site-header,
    body.contact-screen .site-header{padding:0;}
    .brand-banner,
    body.contact-screen .brand-banner{border-width:1px !important;}
}


/* BUILD 028 - Main-page WhatsApp + Call quick actions */
.home-quick-contact{
    position:fixed;
    right:18px;
    bottom:18px;
    z-index:1200;
    display:flex;
    flex-direction:column;
    gap:9px;
    align-items:flex-end;
}
.home-contact-btn{
    min-height:48px;
    display:flex;
    align-items:center;
    gap:10px;
    padding:8px 15px 8px 8px;
    border:1px solid #d9b92e;
    border-radius:28px;
    background:linear-gradient(145deg,rgba(61,8,69,.97),rgba(22,3,27,.97));
    color:#fff;
    text-decoration:none;
    font-weight:700;
    font-size:14px;
    letter-spacing:.15px;
    box-shadow:0 7px 22px rgba(0,0,0,.42);
    backdrop-filter:blur(5px);
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.home-contact-btn:hover,
.home-contact-btn:focus-visible{
    transform:translateY(-2px);
    border-color:#ffe05b;
    box-shadow:0 9px 25px rgba(0,0,0,.5);
}
.home-contact-icon{
    width:32px;
    height:32px;
    flex:0 0 32px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#e2c33b;
    color:#210525;
    font-size:12px;
    font-weight:900;
    line-height:1;
}
.home-contact-call .home-contact-icon{font-size:18px;}
.home-contact-whatsapp{
    background:linear-gradient(145deg,rgba(45,6,53,.98),rgba(12,31,20,.98));
}

@media (max-width:700px){
    .home-quick-contact{
        right:10px;
        bottom:10px;
        left:10px;
        flex-direction:row;
        align-items:stretch;
        justify-content:center;
        gap:7px;
    }
    .home-contact-btn{
        flex:1 1 0;
        justify-content:center;
        min-width:0;
        min-height:46px;
        padding:7px 9px;
        border-radius:24px;
        font-size:12px;
        text-align:center;
    }
    .home-contact-icon{
        width:29px;
        height:29px;
        flex-basis:29px;
        font-size:10px;
    }
    .home-contact-call .home-contact-icon{font-size:16px;}
}
@media (max-width:390px){
    .home-contact-btn{
        font-size:11px;
        gap:6px;
        padding-left:6px;
        padding-right:7px;
    }
}


/* =========================================================
   BUILD 029 - CONTACT LEFT-COLUMN LOCATION COMPACTION
   ========================================================= */
.quote-left-column{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
    align-self:start;
}
.quote-location{
    display:block;
    width:100%;
    margin:0;
    padding:15px 18px;
}
.quote-location .location-copy{width:100%;}
.quote-location .location-actions{
    justify-content:flex-start;
    margin-top:13px;
    gap:9px;
}
.quote-location .location-actions .btn{
    flex:0 1 auto;
}
@media(max-width:900px){
    .quote-left-column{gap:12px;}
}
@media(max-width:700px){
    .quote-location{padding:13px 15px;}
    .quote-location .location-actions{width:100%;}
    .quote-location .location-actions .btn{flex:1 1 180px;}
}


/* =========================================================
   BUILD 030 - PHOTO GALLERY PROTOTYPE
   ========================================================= */
.gallery-page{padding:8px 0 22px;background:linear-gradient(180deg,#060710 0%,#08070d 55%,#0d0610 100%)}
.gallery-heading{text-align:center;padding:18px 16px 8px}.gallery-title-rule{display:flex;align-items:center;justify-content:center;gap:16px}.gallery-title-rule span{width:min(130px,10vw);height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.gallery-heading h1{margin:0;color:#edc743;font-family:"Segoe UI",Tahoma,Arial,sans-serif;font-size:clamp(31px,3.2vw,48px);font-weight:normal;text-transform:uppercase;letter-spacing:2px;text-shadow:0 2px 5px #000}.gallery-heading p{margin:3px 0 0;color:#f0edf2;font-size:15px}
.gallery-feature-layout{display:grid;grid-template-columns:235px minmax(0,1fr) 175px;gap:12px;align-items:start;margin-top:8px}.gallery-sidebar{display:grid;gap:12px}.gallery-panel{border:1px solid #bd9000;border-radius:6px;background:linear-gradient(180deg,rgba(13,12,20,.96),rgba(7,7,12,.98));padding:13px 12px;box-shadow:inset 0 0 18px rgba(97,5,91,.08)}.gallery-panel h2{margin:0 0 10px;text-align:center;color:#e8c640;font-family:"Segoe UI",Tahoma,Arial,sans-serif;font-size:17px;font-weight:normal}
.gallery-category{width:100%;display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:5px;border:0;border-radius:4px;padding:9px 8px;background:transparent;color:#eee;text-align:left;cursor:pointer;font-size:13px}.gallery-category span{color:#f2c400;text-align:center}.gallery-category b{font-weight:normal;color:#eee}.gallery-category:hover,.gallery-category.active{background:linear-gradient(90deg,#39033b,#4e064d);color:#fff}.gallery-category.active b{color:#ffd52c}
.gallery-filter-panel label{display:block;color:#ddd;font-size:11px;margin:10px 0 5px}.gallery-filter-panel input,.gallery-filter-panel select{width:100%;margin-top:5px;height:31px;border:1px solid #5f5841;border-radius:4px;background:#07090d;color:#eee;padding:0 10px}.gallery-search-wrap{position:relative;display:block}.gallery-search-wrap span{position:absolute;right:9px;top:12px;color:#eee}.gallery-reset{width:100%;margin-top:11px;height:36px;border:1px solid #7d3a75;border-radius:4px;background:linear-gradient(90deg,#220422,#4c0749);color:#efc72d;text-transform:uppercase;font-weight:bold;font-size:11px;cursor:pointer}
.gallery-main{min-width:0}.gallery-category-cards{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.gallery-category-cards button{padding:0 0 9px;border:1px solid #c69500;border-radius:5px;background:#06070b;color:#fff;overflow:hidden;cursor:pointer}.gallery-category-cards img{display:block;width:100%;aspect-ratio:1.37/1;object-fit:cover}.gallery-category-cards span{display:block;margin-top:7px;color:#eac23b;font-family:"Segoe UI",Tahoma,Arial,sans-serif;font-size:13px;text-transform:uppercase}.gallery-category-cards small{display:block;margin-top:4px;color:#eee;font-size:11px}
.gallery-toolbar{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;margin:12px 0 6px;padding:7px 9px;border:1px solid #74600a;border-radius:5px;background:#08090d;color:#ddd;font-size:11px}.gallery-view-switch{display:flex;align-items:center;gap:3px}.gallery-view-switch button{border:1px solid transparent;background:transparent;color:#ddd;padding:7px 9px;cursor:pointer}.gallery-view-switch button.active{border-color:#7c4275;background:#260423;color:#f1c624}.gallery-per-page select{height:29px;border:1px solid #8e7000;border-radius:4px;background:#08090d;color:#eee;padding:0 18px 0 8px}
.gallery-photo-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.gallery-photo{position:relative;padding:0;border:1px solid #be9200;border-radius:5px;overflow:hidden;background:#05060a;cursor:pointer;min-width:0}.gallery-photo img{display:block;width:100%;aspect-ratio:1.28/1;object-fit:cover;transition:transform .25s ease,filter .25s ease}.gallery-photo:hover img{transform:scale(1.04);filter:brightness(1.08)}.gallery-photo-caption{position:absolute;left:0;right:0;bottom:0;padding:26px 7px 6px;background:linear-gradient(transparent,rgba(0,0,0,.85));text-align:left;opacity:0;transition:opacity .2s}.gallery-photo:hover .gallery-photo-caption{opacity:1}.gallery-photo-caption b,.gallery-photo-caption small{display:block}.gallery-photo-caption b{color:#f1ca38;font-size:11px}.gallery-photo-caption small{color:#eee;font-size:9px;margin-top:2px}.gallery-photo[hidden]{display:none!important}
.gallery-photo-grid.masonry{grid-template-columns:repeat(5,1fr);align-items:start}.gallery-photo-grid.masonry .gallery-photo:nth-child(3n) img{aspect-ratio:1/1.18}.gallery-photo-grid.masonry .gallery-photo:nth-child(4n) img{aspect-ratio:1.35/1}.gallery-photo-grid.slideshow{display:block}.gallery-photo-grid.slideshow .gallery-photo{display:none;max-width:830px;margin:0 auto}.gallery-photo-grid.slideshow .gallery-photo:not([hidden]):first-of-type{display:block}.gallery-photo-grid.slideshow .gallery-photo img{aspect-ratio:16/8.8}.gallery-load-more{display:block;margin:9px auto 0;min-width:235px;padding:8px 18px;border:1px solid #967000;border-radius:5px;background:linear-gradient(180deg,#420440,#24031f);color:#edc732;text-transform:uppercase;cursor:pointer}
.gallery-highlights{text-align:center}.gallery-camera{width:66px;height:66px;border:2px solid #e7bd24;border-radius:50%;margin:8px auto 12px;display:grid;place-items:center;color:#f0c62d;font-size:42px;box-shadow:0 0 16px rgba(222,173,0,.35)}.gallery-highlights p,.gallery-memories p,.gallery-share p{color:#ddd;font-size:11px;line-height:1.55;text-align:center}.gallery-stats{display:grid;grid-template-columns:auto 1fr;gap:7px;align-items:center;border-top:1px solid rgba(211,166,0,.25);padding:7px 2px;text-align:left}.gallery-stats strong{color:#efc635;font-family:"Segoe UI",Tahoma,Arial,sans-serif;font-size:17px}.gallery-stats span{font-size:10px;color:#ddd}.gallery-memories{background:linear-gradient(180deg,rgba(82,4,79,.35),rgba(9,7,13,.98));text-align:center}.gallery-memories h2{color:#f0cbe9}.gallery-memories .btn{padding:9px 10px;font-size:10px}.gallery-share-buttons{display:flex;justify-content:center;gap:8px}.gallery-share-buttons a,.gallery-share-buttons button{width:30px;height:30px;border-radius:50%;border:1px solid #8c710e;background:#090b11;color:#fff;display:grid;place-items:center;text-decoration:none;font-weight:bold;cursor:pointer}.gallery-share-buttons a:first-child{border-color:#24b85b;color:#63e187}
.gallery-lightbox{position:fixed;inset:0;z-index:3000;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.93);padding:45px 70px}.gallery-lightbox.open{display:flex}.gallery-lightbox figure{margin:0;max-width:min(1100px,90vw);text-align:center}.gallery-lightbox img{max-width:100%;max-height:78vh;border:1px solid #d0a300;box-shadow:0 0 35px #000}.gallery-lightbox figcaption{margin-top:10px;color:#f0c83d;font-family:"Segoe UI",Tahoma,Arial,sans-serif}.gallery-lightbox button{position:absolute;border:1px solid #c59b00;background:#160518;color:#f1cc3d;cursor:pointer}.gallery-lightbox-close{top:18px;right:20px;width:40px;height:40px;border-radius:50%;font-size:28px}.gallery-lightbox-prev,.gallery-lightbox-next{top:50%;width:44px;height:56px;border-radius:6px;font-size:40px;transform:translateY(-50%)}.gallery-lightbox-prev{left:18px}.gallery-lightbox-next{right:18px}.nav-group>button.active{background:linear-gradient(180deg,#4e064f,#220126);box-shadow:inset 0 -2px 0 var(--magenta)}
@media(max-width:1200px){.gallery-feature-layout{grid-template-columns:210px minmax(0,1fr)}.gallery-sidebar-right{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.gallery-category-cards{grid-template-columns:repeat(3,1fr)}.gallery-photo-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:820px){.gallery-feature-layout{grid-template-columns:1fr}.gallery-sidebar-left{grid-template-columns:1fr 1fr}.gallery-main{grid-row:2}.gallery-sidebar-right{grid-template-columns:1fr}.gallery-toolbar{grid-template-columns:1fr}.gallery-photo-grid{grid-template-columns:repeat(3,1fr)}.gallery-photo-grid.masonry{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.gallery-heading{padding-top:14px}.gallery-heading h1{font-size:28px}.gallery-heading p{font-size:12px}.gallery-feature-layout{width:calc(100% - 20px)}.gallery-sidebar-left{grid-template-columns:1fr}.gallery-category-cards{grid-template-columns:repeat(2,1fr)}.gallery-photo-grid,.gallery-photo-grid.masonry{grid-template-columns:repeat(2,1fr)}.gallery-sidebar-right{grid-template-columns:1fr}.gallery-lightbox{padding:45px 12px}.gallery-lightbox-prev{left:4px}.gallery-lightbox-next{right:4px}}

/* =========================================================
   BUILD 032 - GALLERY FONT ALIGNMENT
   Force the complete Gallery interface to use the same
   Segoe UI typography as the approved Contact page.
   ========================================================= */
.gallery-page,
.gallery-page button,
.gallery-page input,
.gallery-page select,
.gallery-page textarea,
.gallery-page a,
.gallery-page h1,
.gallery-page h2,
.gallery-page h3,
.gallery-page h4,
.gallery-page h5,
.gallery-page h6,
.gallery-page p,
.gallery-page span,
.gallery-page small,
.gallery-page strong,
.gallery-page b,
.gallery-page label,
.gallery-lightbox,
.gallery-lightbox * {
    font-family:"Segoe UI",Tahoma,Arial,sans-serif !important;
}

/* =========================================================
   BUILD 034 - UNIFORM GALLERY CATEGORY TILE HEIGHTS
   Keep every category tile the same height as the longest
   Church Groups category tile, regardless of title length.
   ========================================================= */
.gallery-category-cards{align-items:stretch;grid-auto-rows:1fr}
.gallery-category-cards button{height:100%;min-height:198px;display:flex;flex-direction:column;align-items:stretch}
.gallery-category-cards span{min-height:48px;padding:0 5px;display:flex;align-items:center;justify-content:center;line-height:1.35}
.gallery-category-cards small{margin-top:auto;padding-top:2px}


/* =========================================================
   BUILD 049 - HOME HERO DAY/NIGHT OPENING PAIR
   The two new photographs fill the existing hero frame and
   use the same relaxed cross-fade feel as the About page.
   ========================================================= */
.hero-slider.hero-slow-fade .hero-slide{
    transition:opacity 2.5s ease-in-out,transform 8s ease;
}
.hero-slider .hero-daynight-slide{
    background-size:cover;
    background-position:center center;
}
.hero-thumbnails{
    max-width:940px;
}

/* =========================================================
   BUILD 050 - HOME HERO PHOTO BRIGHTNESS TEST
   Remove the full-frame dark shade from the Home hero so the
   slideshow photographs display at their natural brightness.
   ========================================================= */
.hero-slider .hero-shade{
    background:none !important;
}


/* =========================================================
   BUILD 051 - LOCKED HOME PAGE REFINEMENTS
   - Darker hero copy with no light/white backing treatment.
   - Match audio introduction heading to site typography.
   - Compact five-card primary services row, incl. School Groups.
   - Compact/equal Explore More cards in one grouped row.
   ========================================================= */

/* Hero copy: dark readable foreground text without a white/light background. */
.hero-slider .hero-copy .eyebrow,
.hero-slider .hero-copy h1{
    color:#2a1804;
    background:transparent !important;
    -webkit-box-decoration-break:clone;
    box-decoration-break:clone;
}
.hero-slider .hero-copy h1{
    font-family:"Segoe UI",Tahoma,Arial,sans-serif;
    font-weight:600;
    text-shadow:0 1px 0 rgba(228,170,22,.55),0 2px 3px rgba(0,0,0,.18);
}
.hero-slider .hero-copy .eyebrow{
    font-family:"Segoe UI",Tahoma,Arial,sans-serif;
    font-weight:700;
    text-shadow:none;
}

/* Audio heading now uses the same clean site font as the rest of the page. */
.hero-audio-title{
    font-family:"Segoe UI",Tahoma,Arial,sans-serif !important;
    font-weight:600;
    letter-spacing:.2px;
}

/* Five compact, equal-size main service tiles on desktop. */
.primary-grid{
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:12px;
    margin-top:18px;
    align-items:stretch;
}
.feature-card{
    min-height:180px;
    padding:18px 14px 16px;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
}
.feature-icon{font-size:27px;line-height:1.15;}
.feature-card h2{
    margin:12px 0 8px;
    font-family:"Segoe UI",Tahoma,Arial,sans-serif;
    font-size:17px;
    line-height:1.2;
    font-weight:600;
}
.feature-card p{
    margin:0;
    font-size:12px;
    line-height:1.45;
}
.feature-card a{
    margin-top:auto;
    padding-top:12px;
    font-size:10px;
}

/* Keep all Explore More tiles together, compact, and exactly equal in width/height. */
.home-showcase{padding-top:30px;padding-bottom:36px;}
.showcase-heading{margin-bottom:14px;}
.showcase-grid{
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
    align-items:stretch;
}
.showcase-card,
.showcase-wide{
    grid-column:auto;
    min-height:286px;
    height:100%;
    display:flex;
    flex-direction:column;
}
.showcase-image,
.showcase-placeholder,
.showcase-split{
    height:128px;
    flex:0 0 128px;
}
.showcase-body{
    flex:1 1 auto;
    display:flex;
    flex-direction:column;
    padding:11px 12px 13px;
}
.showcase-body h3{font-size:16px;}
.showcase-body p{font-size:10.5px;line-height:1.35;}
.showcase-link,.showcase-status{margin-top:auto;font-size:8.5px;}

@media(max-width:1200px){
    .primary-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
    .showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:850px){
    .primary-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:560px){
    .primary-grid,.showcase-grid{grid-template-columns:1fr;}
    .feature-card{min-height:165px;}
    .showcase-card,.showcase-wide{min-height:0;}
}


/* =========================================================
   BUILD 052 - PHOTO-FIRST HOME HERO
   - Move welcome/destination copy into a compact strip above hero.
   - Put Request a Quote at the far right of that strip.
   - Remove copy/buttons from directly over the photographs.
   - Increase hero height to show more of each image.
   - Reserve separate bottom-row areas for audio and thumbnails.
   ========================================================= */
.home-intro-strip{
    width:100%;
    min-height:84px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:28px;
    align-items:center;
    padding:14px clamp(34px,5vw,78px);
    background:linear-gradient(90deg,#0b0710 0%,#21031f 52%,#0b0710 100%);
    border-bottom:1px solid #8f6d00;
}
.home-intro-copy{min-width:0;}
.home-intro-eyebrow{
    margin:0 0 5px;
    color:#f1c82d;
    font-family:"Segoe UI",Tahoma,Arial,sans-serif;
    font-size:14px;
    line-height:1.2;
    font-weight:700;
    letter-spacing:.45px;
}
.home-intro-description{
    color:#eee9ef;
    font-family:"Segoe UI",Tahoma,Arial,sans-serif;
    font-size:16px;
    line-height:1.4;
}
.home-intro-quote{
    min-width:184px;
    padding:15px 24px;
    text-align:center;
    white-space:nowrap;
}

/* Taller photo area now that the large text block is no longer over the image. */
.hero-slider{min-height:590px;}
.hero-slider .hero-overlay{display:none !important;}
.hero-slider .hero-slide{background-position:center center;}

/* Keep controls off the main visual area as much as possible. */
.hero-arrow{top:46%;}
.hero-dots{bottom:92px;}

/* Dedicated audio area on the left. */
.hero-audio{
    left:34px;
    bottom:18px;
    width:570px;
    min-width:0;
}

/* Dedicated thumbnail area to the right of the audio player: never overlap. */
.hero-thumbnails{
    left:630px;
    right:34px;
    bottom:18px;
    width:auto;
    max-width:none;
    justify-content:flex-end;
    gap:8px;
    transform:none;
}
.hero-thumb{
    flex:1 1 84px;
    width:auto;
    min-width:68px;
    max-width:108px;
    height:60px;
}

@media(max-width:1150px){
    .home-intro-strip{gap:18px;padding-left:28px;padding-right:28px;}
    .home-intro-description{font-size:14px;}
    .home-intro-quote{min-width:165px;padding:13px 18px;}
    .hero-slider{min-height:560px;}
    .hero-audio{left:24px;width:430px;}
    .hero-thumbnails{left:474px;right:24px;gap:6px;}
    .hero-thumb{min-width:54px;height:52px;}
}

@media(max-width:760px){
    .home-intro-strip{
        grid-template-columns:1fr;
        gap:10px;
        padding:14px 16px 16px;
    }
    .home-intro-eyebrow{font-size:13px;}
    .home-intro-description{font-size:13px;line-height:1.45;}
    .home-intro-quote{justify-self:start;min-width:0;padding:11px 16px;}

    .hero-slider{min-height:560px;}
    .hero-audio{
        left:14px;
        right:14px;
        bottom:82px;
        width:auto;
    }
    .hero-thumbnails{
        left:14px;
        right:14px;
        bottom:14px;
        width:auto;
        justify-content:flex-start;
        transform:none;
        overflow-x:auto;
    }
    .hero-thumb{
        flex:0 0 88px;
        width:88px;
        min-width:88px;
        max-width:88px;
        height:50px;
    }
    .hero-dots{bottom:154px;}
}

/* =========================================================
   BUILD 053 - COMPACT HOME CONTENT + BALANCED EXPLORE TILES
   ========================================================= */
/* Make the welcome wording stand out more without increasing the strip height. */
.home-intro-strip{min-height:84px;padding-top:10px;padding-bottom:10px;}
.home-intro-eyebrow{font-size:16px;margin-bottom:4px;}
.home-intro-description{font-size:18px;line-height:1.25;}

/* Shorter, equal service tiles to reduce scrolling. */
.primary-grid{margin-top:12px;gap:12px;}
.feature-card{min-height:148px;padding:12px 12px 10px;}
.feature-icon{font-size:23px;}
.feature-card h2{margin:7px 0 5px;font-size:16px;}
.feature-card p{font-size:11px;line-height:1.3;}
.feature-card a{padding-top:7px;font-size:9px;}

/* Compact Why Choose section. */
.why{padding:16px 0 12px;}
.why .section-title{margin-bottom:10px;font-size:27px;}
.why-grid div{padding:10px 12px;}
.why-grid strong{margin-bottom:4px;font-size:15px;}
.why-grid span{font-size:11px;line-height:1.3;}

/* Compact Explore More area; all five tiles have exactly the same height. */
.home-showcase{padding-top:18px;padding-bottom:16px;}
.showcase-heading{margin-bottom:10px;}
.showcase-heading .section-title{margin:3px 0 4px;font-size:27px;}
.showcase-heading p{font-size:12px;line-height:1.3;}
.showcase-grid{gap:10px;align-items:stretch;}
.showcase-card,.showcase-wide{height:250px;min-height:250px;max-height:250px;}
.showcase-image,.showcase-placeholder,.showcase-split{height:112px;min-height:112px;flex:0 0 112px;}
.showcase-body{padding:9px 10px 10px;min-height:0;}
.showcase-body h3{margin-bottom:4px;font-size:15px;line-height:1.15;}
.showcase-body p{margin-bottom:5px;font-size:10px;line-height:1.25;}
.showcase-link,.showcase-status{font-size:8px;line-height:1.15;}
.showcase-placeholder{gap:7px;}
.showcase-placeholder span{font-size:38px;}
.showcase-placeholder b{padding:5px 9px;font-size:9px;}

/* Compress the utility links and footer area. */
.legacy-links a{padding:10px 7px;font-size:14px;}
.site-footer{padding-top:8px;}
.footer-grid{gap:18px;padding:7px 0 10px;}
.footer-grid h3{margin-bottom:3px;font-size:17px;}
.footer-grid p{font-size:11px;line-height:1.3;}
.footer-bottom{padding:7px;font-size:10px;}

@media(max-width:1150px){
    .home-intro-eyebrow{font-size:15px;}
    .home-intro-description{font-size:16px;}
}
@media(max-width:850px){
    .showcase-card,.showcase-wide{height:auto;min-height:235px;max-height:none;}
}
@media(max-width:760px){
    .home-intro-strip{min-height:0;}
    .home-intro-description{font-size:14px;}
    .feature-card{min-height:140px;}
}

/* =========================================================
   BUILD 054 - HOME HERO FIT + UNIFIED DESCRIPTION TYPOGRAPHY
   - Slightly reduce desktop hero height so the complete hero section is
     visible more comfortably on first load.
   - Keep all descriptive/body copy on the Home page in the same clean font.
   - All other Build 053 sizing, spacing and layout remain unchanged.
   ========================================================= */

/* Slightly shorter hero while preserving the photo-first proportions. */
.hero-slider{min-height:520px;}

/* One consistent font family for all Home page descriptive copy. */
.home-intro-description,
.feature-card p,
.why-grid span,
.showcase-heading p,
.showcase-body p,
.footer-grid p{
    font-family:"Segoe UI",Tahoma,Arial,sans-serif !important;
}

@media(max-width:1150px){
    .hero-slider{min-height:500px;}
}
@media(max-width:760px){
    .hero-slider{min-height:520px;}
}


/* =========================================================
   BUILD 055 - ABOUT PAGE RESTORE + COMPACT EXPLORE + ADDRESS
   - Keep Build 054 Home hero dimensions untouched.
   - Reduce the five Explore More cards while keeping equal heights.
   - Restore the About Us page card/grid layout and contain all photos.
   - Use the clean Segoe UI family for About page body/descriptive copy.
   ========================================================= */

/* HOME: tighter Explore More cards, still perfectly equal. */
.showcase-card,
.showcase-wide{
    height:220px;
    min-height:220px;
    max-height:220px;
}
.showcase-image,
.showcase-placeholder,
.showcase-split{
    height:94px;
    min-height:94px;
    flex:0 0 94px;
}
.showcase-body{padding:8px 10px 9px;}
.showcase-body h3{margin-bottom:3px;font-size:15px;line-height:1.12;}
.showcase-body p{margin-bottom:4px;font-size:9.5px;line-height:1.22;}
.showcase-link,.showcase-status{font-size:7.8px;}
.showcase-placeholder{gap:5px;}
.showcase-placeholder span{font-size:32px;}
.showcase-placeholder b{padding:4px 8px;font-size:8px;}

/* ABOUT: page-wide typography and layout reset. */
.about-page,
.about-page p,
.about-page small,
.about-page span,
.about-page a,
.about-page strong,
.about-page b,
.about-page h1,
.about-page h2,
.about-page h3{
    font-family:"Segoe UI",Tahoma,Arial,sans-serif;
}
.about-page{color:#f2edf4;background:linear-gradient(180deg,#08070b 0%,#120313 58%,#08070b 100%);}
.about-page .eyebrow{color:#e8c23b;font-size:11px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;}
.about-page h1,.about-page h2{color:#f2f0f3;font-weight:600;}
.about-page h2{font-size:24px;line-height:1.2;margin:6px 0 12px;}
.about-page p{font-size:14px;line-height:1.55;color:#eee9ef;}

/* About hero: one contained, bright photo composition instead of oversized images. */
.about-hero{
    position:relative;
    min-height:400px;
    overflow:hidden;
    border-bottom:1px solid #b78b00;
    background:#08080a;
}
.about-hero-image{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
    display:block;
}
.about-hero-shade{
    position:absolute;
    inset:0;
    z-index:2;
    background:linear-gradient(90deg,rgba(5,3,8,.80) 0%,rgba(5,3,8,.60) 34%,rgba(5,3,8,.08) 58%,rgba(5,3,8,0) 100%);
    pointer-events:none;
}
.about-hero-copy{
    position:absolute;
    z-index:5;
    left:clamp(24px,5vw,76px);
    top:50%;
    transform:translateY(-50%);
    width:min(48%,650px);
    padding:18px 20px;
}
.about-hero-copy h1{margin:5px 0 10px;font-size:clamp(30px,3.2vw,48px);color:#f1c82d;text-shadow:0 2px 4px #000;}
.about-hero-copy p{margin:7px 0;color:#fff;}
.about-hero-tagline{font-weight:600;color:#f0d46b !important;}

/* Ensure the day/night inset remains neatly contained inside the hero. */
.about-hero .about-hero-daynight{
    right:12px;
    top:12px;
    bottom:12px;
    width:43%;
    max-width:650px;
    border-radius:8px;
    box-shadow:0 8px 28px rgba(0,0,0,.34);
}

.about-wrap{width:min(1380px,calc(100% - 32px));margin:18px auto 28px;display:grid;gap:14px;}
.about-panel{
    border:1px solid #9f7900;
    border-radius:8px;
    background:linear-gradient(145deg,rgba(38,2,39,.78),rgba(8,8,12,.96));
    padding:18px 20px;
    box-shadow:inset 0 0 22px rgba(91,0,84,.08);
    overflow:hidden;
}
.about-panel p{margin:7px 0;}
.about-welcome-text-only{padding:16px 20px;}

.about-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.about-facts article{
    min-height:116px;
    padding:14px 12px;
    display:grid;
    grid-template-columns:auto auto 1fr;
    grid-template-areas:"icon num label" "desc desc desc";
    align-items:center;
    column-gap:7px;
    border:1px solid #b58c00;
    border-radius:7px;
    background:linear-gradient(145deg,#220223,#0b090e);
}
.fact-icon{grid-area:icon;font-size:24px;}
.about-facts strong{grid-area:num;color:#efc83c;font-size:26px;line-height:1;}
.about-facts b{grid-area:label;color:#f0c93f;font-size:12px;letter-spacing:.35px;}
.about-facts small{grid-area:desc;margin-top:9px;color:#d9d3db;font-size:11px;line-height:1.35;}

.about-two-column{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:stretch;}
.accommodation-panel,.venues-panel{display:flex;flex-direction:column;}
.about-mini-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:auto;padding-top:12px;}
.about-mini-gallery img{
    width:100%;
    height:118px;
    object-fit:cover;
    display:block;
    border:1px solid #a77d00;
    border-radius:6px;
}
.venue-capacity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0;}
.venue-capacity-grid>div{
    min-height:76px;
    display:grid;
    grid-template-columns:auto 1fr auto;
    grid-template-areas:"icon name cap" "icon name people";
    align-items:center;
    gap:2px 6px;
    padding:9px 10px;
    border:1px solid rgba(190,145,0,.72);
    border-radius:6px;
    background:rgba(13,9,16,.78);
}
.venue-capacity-grid span{grid-area:icon;font-size:18px;}
.venue-capacity-grid b{grid-area:name;color:#e9c33d;font-size:11px;line-height:1.15;}
.venue-capacity-grid strong{grid-area:cap;color:#fff;font-size:20px;line-height:1;}
.venue-capacity-grid small{grid-area:people;color:#cfc8d0;font-size:9px;text-align:right;}
.about-center-button{align-self:flex-start;margin-top:auto;}

.events-panel{padding-bottom:16px;}
.event-type-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:10px;}
.event-type-grid>div{
    min-height:76px;
    display:grid;
    grid-template-columns:auto 1fr;
    grid-template-areas:"icon title" "icon desc";
    align-items:center;
    gap:2px 7px;
    padding:10px;
    border:1px solid rgba(179,134,0,.72);
    border-radius:6px;
    background:rgba(12,9,15,.82);
}
.event-type-grid span{grid-area:icon;font-size:18px;}
.event-type-grid strong{grid-area:title;color:#f0ca40;font-size:12px;line-height:1.2;}
.event-type-grid small{grid-area:desc;color:#d4ced6;font-size:10px;line-height:1.25;}

.about-church{display:grid;grid-template-columns:300px minmax(0,1fr) 170px;gap:18px;align-items:center;}
.about-church>img{width:100%;height:205px;object-fit:cover;border-radius:6px;border:1px solid #a77d00;}
.about-church-copy p{font-size:13px;}
.about-highlight{display:block;margin-top:10px;color:#efc63b;font-size:14px;}
.group-capacity{
    min-height:150px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:14px;
    border:1px solid #b68d00;
    border-radius:7px;
    background:linear-gradient(145deg,#230225,#09090d);
    text-align:center;
}
.group-capacity>span{font-size:28px;}.group-capacity strong{font-size:30px;color:#efc83e;}.group-capacity b{font-size:12px;color:#fff;}.group-capacity small{font-size:9px;color:#d8d2da;letter-spacing:.6px;}

.about-location{display:grid;grid-template-columns:minmax(260px,1.4fr) 160px 160px minmax(260px,1fr);gap:12px;align-items:center;}
.distance-card{height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #a77d00;border-radius:7px;background:rgba(13,9,16,.82);text-align:center;padding:10px;}
.distance-card span{font-size:22px;}.distance-card strong{color:#efc83b;font-size:23px;}.distance-card small{font-size:9px;color:#d8d2da;line-height:1.3;}
.about-location-photo{position:relative;height:150px;overflow:hidden;border:1px solid #a77d00;border-radius:7px;}
.about-location-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.about-location-photo .btn{position:absolute;left:10px;bottom:10px;}

.about-final{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(360px,1fr);gap:18px;align-items:center;}
.about-cta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.about-cta-grid a{min-height:92px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid #aa8000;border-radius:6px;background:rgba(15,10,17,.85);color:#efc83d;text-decoration:none;text-align:center;padding:10px;}
.about-cta-grid a span{font-size:22px;}.about-cta-grid a strong{font-size:11px;}

@media(max-width:1100px){
    .about-facts{grid-template-columns:repeat(2,1fr);}
    .event-type-grid{grid-template-columns:repeat(3,1fr);}
    .about-church{grid-template-columns:240px 1fr;}.group-capacity{grid-column:1/-1;min-height:100px;}
    .about-location{grid-template-columns:1fr 1fr;}.about-location-copy,.about-location-photo{grid-column:1/-1;}
}
@media(max-width:850px){
    .showcase-card,.showcase-wide{height:auto;min-height:205px;max-height:none;}
    .about-hero{min-height:340px;}
    .about-hero-copy{width:75%;left:22px;padding:14px;}
    .about-two-column,.about-final{grid-template-columns:1fr;}
    .venue-capacity-grid{grid-template-columns:repeat(2,1fr);}
    .event-type-grid{grid-template-columns:repeat(2,1fr);}
    .about-church{grid-template-columns:1fr;}.about-church>img{height:220px;}
}
@media(max-width:560px){
    .about-wrap{width:calc(100% - 20px);}
    .about-facts,.venue-capacity-grid,.event-type-grid,.about-location,.about-cta-grid{grid-template-columns:1fr;}
    .about-mini-gallery{grid-template-columns:1fr;}.about-mini-gallery img{height:180px;}
    .about-hero-copy{width:calc(100% - 28px);left:14px;}
    .about-hero-shade{background:rgba(5,3,8,.58);}
}

/* =========================================================
   BUILD 056 - ABOUT US PHOTO + HERO + FOOTER REFINEMENTS
   ========================================================= */
/* Shorter About hero, with a wider photo showcase. */
.about-hero{min-height:330px;}
.about-hero .about-hero-daynight{
    width:48%;
    max-width:none;
    top:10px;
    bottom:10px;
}
.about-hero .about-hero-daynight .about-hero-fade{
    object-fit:contain;
    object-position:center center;
    background:#07070a;
}
.about-hero-copy{width:min(46%,650px);}

/* New About page photography: preserve the wide compositions. */
.about-mini-gallery img{object-position:center center;}
.about-church>img{object-position:center center;}
.about-location-photo img{object-position:center center;}

/* Slightly larger footer typography while retaining the compact footer. */
.footer-grid h3{font-size:18px;}
.footer-grid p{font-size:13px;line-height:1.42;}
.footer-gps{font-size:11px;}
.footer-bottom{font-size:11px;}

@media(max-width:850px){
    .about-hero{min-height:340px;}
    .about-hero-copy{width:75%;}
}

/* BUILD 056A - deployment-safe final overrides */
.about-hero{height:330px;min-height:330px;}
.footer-grid p,.footer-grid p a{font-size:13px;}
@media(max-width:850px){.about-hero{height:auto;min-height:340px;}}

/* BUILD 056B - About hero fading-photo frame matched to photo aspect ratio */
@media(min-width:901px){
    .about-hero .about-hero-daynight{
        width:min(620px,44%);
    }
}

/* =========================================================
   BUILD 057 - TERMS + MENU & CATERING
   ========================================================= */
.simple-hero{width:min(1380px,calc(100% - 32px));margin:18px auto 0;min-height:210px;border:1px solid #a47c00;border-radius:9px;background:linear-gradient(120deg,#230224,#08080b);display:flex;align-items:center;justify-content:space-between;gap:25px;padding:30px 38px;overflow:hidden}.simple-hero>div:first-child{max-width:650px}.simple-hero h1{margin:5px 0 9px;color:#f1c82d;font-size:clamp(31px,4vw,48px)}.simple-hero p{margin:0;color:#eee}.legal-wrap h2,.menu-card h2,.catering-intro h2,.catering-note h2{color:#efc83d}.legal-wrap .about-panel h2:not(:first-of-type){margin-top:22px}.legal-important{border-color:#d0a000;background:linear-gradient(145deg,rgba(62,4,53,.88),rgba(9,8,12,.97))}.legal-important strong{color:#f0cb47}.legal-note{margin-top:20px;padding:14px 16px;border-left:4px solid #d5aa16;background:rgba(213,170,22,.09);color:#eee}.catering-hero{padding-right:18px}.catering-hero-strip{width:48%;height:178px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:7px}.catering-hero-strip img,.catering-gallery img{width:100%;height:100%;object-fit:cover;border:1px solid #a77d00;border-radius:6px}.catering-intro{display:grid;grid-template-columns:1fr 1.15fr;gap:22px;align-items:center}.catering-gallery{height:180px;display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.menu-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-items:stretch}.menu-card{padding:15px 14px}.menu-card h2{text-align:center;font-size:19px;margin:0 0 12px;padding-bottom:9px;border-bottom:1px solid rgba(213,170,22,.55)}.menu-card h3{font-size:13px;color:#fff;margin:14px 0 5px}.menu-card h3 small{display:block;color:#d8b53b;font-size:10px;font-weight:500;margin-top:2px}.menu-card p{font-size:11.5px;line-height:1.45;color:#ddd}.menu-card em{color:#e5c64d;font-style:normal}.menu-alert{margin:0 0 12px;padding:8px;border:1px solid #a77d00;border-radius:5px;color:#efc83d;text-align:center;font-size:11px;background:rgba(191,145,0,.08)}.catering-note{display:flex;justify-content:space-between;gap:25px;align-items:center}.catering-note .btn{flex:0 0 auto}
@media(max-width:1200px){.menu-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.simple-hero{padding:24px;min-height:0;display:block}.catering-hero-strip{width:100%;margin-top:18px}.catering-intro{grid-template-columns:1fr}.menu-grid{grid-template-columns:repeat(2,1fr)}.catering-note{display:block}.catering-note .btn{display:inline-block;margin-top:12px}}
@media(max-width:560px){.simple-hero{width:calc(100% - 20px)}.catering-hero-strip{grid-template-columns:1fr;height:220px}.catering-hero-strip img:nth-child(n+2){display:none}.catering-gallery{grid-template-columns:repeat(2,1fr);height:300px}.menu-grid{grid-template-columns:1fr}}

/* BUILD 058 - per-menu PDF download + WhatsApp enquiry */
.menu-card{display:flex;flex-direction:column}.menu-card .menu-actions{margin-top:auto;padding-top:16px;display:grid;grid-template-columns:1fr;gap:7px}.menu-actions a{display:block;padding:9px 7px;border:1px solid #b88b00;border-radius:5px;text-align:center;text-decoration:none;font-size:10.5px;font-weight:700;line-height:1.25}.menu-download{background:#2b082a;color:#efc83d}.menu-whatsapp{background:#151016;color:#fff}.menu-actions a:hover{filter:brightness(1.18)}

/* BUILD 059 - INTERACTIVE CATERING MENU BUILDER */
.menu-builder{padding:20px;margin-top:14px;background:linear-gradient(145deg,rgba(34,3,38,.96),rgba(8,7,11,.98));border-color:#b88b00}
.menu-builder-head{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,115px);gap:15px;align-items:center;padding-bottom:18px;border-bottom:1px solid rgba(229,185,39,.35)}
.menu-builder-head h2{margin:0 0 8px;color:#efc83d;font-size:28px}.menu-builder-head p{margin:0;max-width:760px;color:#ddd;line-height:1.55}
.builder-step{text-align:center;color:#d7d2d9;font-size:11px}.builder-step strong{display:flex;width:34px;height:34px;margin:0 auto 6px;border:1px solid #d5aa16;border-radius:50%;align-items:center;justify-content:center;color:#ffd900;background:#220725;font-size:16px}.builder-step span{display:block}
.menu-choice-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:18px 0}
.menu-choice{position:relative;min-height:86px;padding:14px 10px;border:1px solid #8d6b00;border-radius:7px;background:linear-gradient(180deg,#18051c,#0b080d);text-align:center;cursor:pointer;transition:.18s ease}.menu-choice:hover,.menu-choice.active{border-color:#f0c41e;background:linear-gradient(180deg,#3b073e,#160619);box-shadow:inset 0 -3px 0 #8d006d}.menu-choice input{position:absolute;opacity:0;pointer-events:none}.menu-choice-title{display:block;color:#f2cb34;font-size:15px;font-weight:700;line-height:1.25}.menu-choice-sub{display:block;color:#cfc9d1;font-size:11px;margin-top:7px}.menu-choice.active .menu-choice-sub{color:#fff}
.menu-build-panels{border:1px solid rgba(190,146,0,.62);border-radius:8px;overflow:hidden;background:rgba(5,4,8,.45)}
.menu-build-panel{display:none;padding:20px}.menu-build-panel.active{display:block}.selection-panel-title{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-bottom:15px;margin-bottom:15px;border-bottom:1px solid rgba(229,185,39,.28)}.selection-panel-title h3{margin:0 0 5px;color:#ffd426;font-size:24px}.selection-panel-title p{margin:0;color:#d7d2d9}.menu-download-inline{flex:0 0 auto;text-decoration:none;border:1px solid #b98c00;border-radius:5px;padding:10px 14px;color:#f1cc3a;background:#260827;font-size:12px;font-weight:700}.menu-download-inline:hover{background:#430744}
.selection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.selection-grid-braai{grid-template-columns:repeat(2,minmax(0,1fr))}.selection-group{min-width:0;margin:0;padding:15px;border:1px solid #684d00;border-radius:7px;background:linear-gradient(145deg,rgba(35,6,38,.75),rgba(8,7,11,.9))}.selection-group.complete{border-color:#b99412}.selection-group legend{width:100%;padding:0 4px 9px;color:#fff;font-size:15px;font-weight:700}.selection-group legend span{display:block;color:#e8bd22;font-size:11px;margin-top:3px;font-weight:600}.selection-count{display:inline-block;margin-top:6px;padding:3px 7px;border:1px solid #755b00;border-radius:20px;color:#bdb7c0;font-size:10px;font-weight:600;background:#0a080d}.selection-count.complete{color:#ffe033;border-color:#b98c00}.selection-group label{display:flex;gap:8px;align-items:flex-start;padding:6px 5px;border-radius:4px;color:#eee;font-size:13px;line-height:1.35;cursor:pointer}.selection-group label:hover{background:rgba(95,7,92,.22)}.selection-group input[type="checkbox"]{flex:0 0 auto;width:17px;height:17px;margin:0;accent-color:#cda400}.selection-group input[type="checkbox"]:disabled+span{opacity:.5}.selection-group label:has(input:disabled){opacity:.42;cursor:not-allowed}.included-note{margin:9px 5px 0;color:#d7bd61;font-size:11px;font-style:italic}.fixed-inclusions{padding:15px;border:1px solid #684d00;border-radius:7px;background:rgba(20,7,22,.76)}.fixed-inclusions h4,.spit-package h4{margin:0 0 4px;color:#efc83d;font-size:14px}.fixed-inclusions p,.spit-package p{margin:0 0 13px;color:#ddd;font-size:13px;line-height:1.5}
.spit-package{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.spit-package>div{padding:14px;border:1px solid #684d00;border-radius:6px;background:rgba(20,7,22,.76)}.spit-package .menu-alert{grid-column:1/-1;margin:0;font-size:13px;background:rgba(186,132,0,.10);color:#ffd426}
.enquiry-builder{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:14px;margin-top:18px}.enquiry-form-wrap,.selection-summary{padding:19px;border:1px solid #8b6900;border-radius:8px;background:linear-gradient(145deg,rgba(29,5,31,.9),rgba(7,6,10,.96))}.enquiry-form-wrap h3,.selection-summary h3{margin:0 0 15px;color:#f0ca37;font-size:21px}.enquiry-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.enquiry-form-grid label{display:block;color:#eee;font-size:12px;font-weight:700}.enquiry-form-grid label>span{color:#ffd326}.enquiry-form-grid input,.enquiry-form-grid textarea{display:block;width:100%;margin-top:6px;padding:11px 12px;border:1px solid #735d19;border-radius:5px;background:#f5f3f5;color:#17131a;font:inherit;font-size:14px}.enquiry-form-grid input:focus,.enquiry-form-grid textarea:focus{outline:2px solid rgba(229,185,39,.55);outline-offset:1px}.enquiry-comments{grid-column:1/-1}.enquiry-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:13px}.enquiry-actions button{min-height:42px;padding:10px 16px;border-radius:5px;font-weight:700;cursor:pointer}.btn-clear-menu{border:1px solid #806400;background:#120d14;color:#dfd8e1}.btn-send-menu{border:1px solid #e3b500;background:linear-gradient(180deg,#e2b600,#a67e00);color:#130b14}.btn-send-menu:hover{filter:brightness(1.08)}.enquiry-status{min-height:21px;margin-top:11px;font-size:12px}.enquiry-status.error{color:#ffb2a5}.enquiry-status.success{color:#f0d45a}
.selection-summary{align-self:start}.summary-menu{padding:10px 11px;margin-bottom:10px;border-left:3px solid #d5a916;background:rgba(213,169,22,.08);color:#ffd426;font-weight:700}.summary-row{padding:8px 0;border-bottom:1px solid rgba(229,185,39,.15)}.summary-row strong{display:block;color:#e9c13b;font-size:12px;margin-bottom:3px}.summary-row span{display:block;color:#e5e0e7;font-size:12px;line-height:1.45}.summary-fixed{padding:7px 0 10px;color:#eee}.summary-empty{color:#aaa2ad;font-size:12px;line-height:1.45}.summary-event{margin-top:8px;color:#ddd;font-size:12px}.summary-event strong{color:#e6c142}.summary-note{margin:17px 0 0;padding-top:12px;border-top:1px solid rgba(229,185,39,.25);color:#aaa4ac;font-size:11px;line-height:1.45}
@media(max-width:1100px){.menu-builder-head{grid-template-columns:1fr repeat(3,95px)}.menu-choice-row{grid-template-columns:repeat(3,1fr)}.selection-grid{grid-template-columns:repeat(2,1fr)}.spit-package{grid-template-columns:repeat(2,1fr)}.spit-package .menu-alert{grid-column:1/-1}}
@media(max-width:760px){.menu-builder{padding:13px}.menu-builder-head{grid-template-columns:1fr}.builder-step{display:none}.menu-choice-row{grid-template-columns:1fr}.menu-choice{min-height:0;padding:12px}.selection-panel-title{display:block}.menu-download-inline{display:inline-block;margin-top:11px}.selection-grid,.selection-grid-braai,.enquiry-builder,.enquiry-form-grid,.spit-package{grid-template-columns:1fr}.enquiry-comments{grid-column:auto}.spit-package .menu-alert{grid-column:auto}.menu-build-panel{padding:13px}.selection-group label{font-size:14px;padding:8px 4px}.enquiry-actions button{width:100%}}

/* =========================================================
   BUILD 061 - VISUAL MENU BUILDER CARDS
   Keeps Build 059 interaction/validation intact; presentation only.
   ========================================================= */
.menu-builder{padding:22px;border-radius:10px;box-shadow:inset 0 0 28px rgba(92,0,83,.10)}
.menu-builder-head{padding-bottom:16px}
.menu-builder-head h2{font-size:30px}
.menu-choice-photo-row{gap:12px;margin:20px 0 22px}
.menu-choice-photo-row .menu-choice{
    padding:0;
    min-height:205px;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    background:linear-gradient(180deg,#120613,#09080b);
    border-color:#a67d00;
    box-shadow:0 4px 14px rgba(0,0,0,.22);
}
.menu-choice-photo-row .menu-choice img{
    width:100%;
    height:118px;
    object-fit:cover;
    object-position:center;
    display:block;
    border-bottom:1px solid rgba(218,170,18,.75);
    filter:saturate(1.04) contrast(1.03);
}
.menu-choice-photo-row .menu-choice-copy{
    min-height:86px;
    padding:12px 9px 10px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.menu-choice-photo-row .menu-choice-title{
    font-size:15px;
    letter-spacing:.1px;
    text-transform:uppercase;
    color:#efc83d;
}
.menu-choice-photo-row .menu-choice-sub{font-size:10.5px;line-height:1.35;margin-top:6px;color:#d4ced6}
.menu-choice-photo-row .menu-choice:hover,
.menu-choice-photo-row .menu-choice.active{
    transform:translateY(-2px);
    border-color:#e4b71a;
    background:linear-gradient(180deg,#2d082e,#0c090f);
    box-shadow:0 8px 18px rgba(0,0,0,.34),inset 0 -4px 0 #8d006d;
}
.menu-choice-photo-row .menu-choice.active:after{
    content:'SELECTED';
    position:absolute;
    top:8px;
    right:8px;
    padding:4px 7px;
    border-radius:12px;
    background:rgba(12,8,14,.9);
    border:1px solid #e0b31a;
    color:#ffe04b;
    font-size:8px;
    font-weight:800;
    letter-spacing:.7px;
}
.menu-build-panels{border-color:#9e7800;background:linear-gradient(145deg,rgba(33,4,35,.54),rgba(5,4,8,.72))}
.selection-panel-title h3{font-size:25px}
.selection-group{box-shadow:inset 0 0 18px rgba(85,0,77,.08)}
.enquiry-form-wrap,.selection-summary{box-shadow:inset 0 0 20px rgba(83,0,77,.08)}

@media(max-width:1100px){
    .menu-choice-photo-row{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
    .menu-choice-photo-row{grid-template-columns:1fr 1fr}
    .menu-choice-photo-row .menu-choice{min-height:185px}
    .menu-choice-photo-row .menu-choice img{height:105px}
}
@media(max-width:520px){
    .menu-choice-photo-row{grid-template-columns:1fr}
    .menu-choice-photo-row .menu-choice{min-height:0}
    .menu-choice-photo-row .menu-choice img{height:150px}
}


/* BUILD 063 - COMBINED MENU INTRO / PHOTO ROW */
.catering-hero-combined{
    width:min(1460px,calc(100% - 32px));
    min-height:245px;
    padding:22px 24px 18px;
    display:grid;
    grid-template-columns:minmax(360px,.88fr) minmax(760px,1.62fr);
    gap:28px;
    align-items:center;
}
.catering-hero-combined .catering-hero-copy{
    max-width:520px;
    text-align:center;
    justify-self:center;
}
.catering-hero-combined .catering-hero-copy .eyebrow{
    margin-bottom:12px;
}
.catering-hero-combined .catering-hero-copy h1{
    margin:0 0 12px;
}
.catering-hero-combined .catering-hero-copy p{
    max-width:500px;
    margin:0 auto;
    line-height:1.5;
}
.catering-feature-row{
    width:100%;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:8px;
    align-items:end;
}
.catering-feature{
    min-width:0;
    text-align:center;
}
.catering-feature-title{
    min-height:42px;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    padding:0 4px 8px;
    color:#f1c82d;
    text-transform:uppercase;
    font-weight:700;
    letter-spacing:1.1px;
    font-size:12px;
    line-height:1.15;
}
.catering-feature img{
    display:block;
    width:100%;
    height:168px;
    object-fit:cover;
    border:1px solid #a77d00;
    border-radius:6px;
}
@media(max-width:1180px){
    .catering-hero-combined{
        grid-template-columns:1fr;
    }
    .catering-hero-combined .catering-hero-copy{
        max-width:760px;
    }
    .catering-feature-row{
        grid-template-columns:repeat(5,1fr);
    }
}
@media(max-width:850px){
    .catering-feature-row{
        grid-template-columns:repeat(3,1fr);
    }
    .catering-feature img{height:155px}
}
@media(max-width:560px){
    .catering-hero-combined{
        width:calc(100% - 20px);
        padding:20px 14px;
    }
    .catering-feature-row{
        grid-template-columns:repeat(2,1fr);
    }
    .catering-feature:last-child{
        grid-column:1/-1;
        width:50%;
        justify-self:center;
    }
    .catering-feature img{height:145px}
}


/* =========================================================
   BUILD 064 - COMPACT MENU SELECTIONS + FOOD ICONS
   Applied consistently to Full/Mini Carvery, Braai and both
   Lamb Spitbraai menu panels. Existing form logic unchanged.
   ========================================================= */

.menu-build-panel{padding:14px 16px}
.selection-panel-title{margin-bottom:10px;padding-bottom:9px}
.selection-panel-title h3{font-size:23px;margin-bottom:3px}
.selection-panel-title p{font-size:12px;line-height:1.35;margin:0}
.menu-download-inline{padding:9px 13px;font-size:11px}
.menu-download-inline:before{content:"⇩";font-size:15px;margin-right:7px;vertical-align:-1px}

.selection-grid{gap:9px}
.selection-grid-braai{gap:9px}
.selection-group{
    padding:9px 11px 10px;
    border-radius:7px;
    min-height:0;
}
.selection-group legend{
    display:flex;
    align-items:center;
    gap:9px;
    padding:0 2px 7px;
    margin-bottom:3px;
}
.category-icon{
    flex:0 0 38px;
    width:38px;
    height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #b58b00;
    border-radius:50%;
    background:rgba(20,10,20,.82);
    font-size:22px;
    line-height:1;
}
.legend-copy{
    display:flex;
    min-width:0;
    flex-direction:column;
    align-items:flex-start;
}
.legend-title{
    color:#f2ca36;
    font-size:14px;
    font-weight:800;
    line-height:1.1;
    text-transform:uppercase;
}
.selection-group legend .legend-copy>span:not(.legend-title){
    margin-top:2px;
    color:#e8bd22;
    font-size:10px;
}
.selection-count{
    margin-top:4px;
    padding:2px 7px;
    font-size:9px;
    line-height:1.25;
}

.selection-group label{
    display:grid;
    grid-template-columns:17px 25px minmax(0,1fr);
    gap:7px;
    align-items:center;
    padding:3px 4px;
    font-size:12px;
    line-height:1.2;
}
.selection-group input[type="checkbox"]{
    width:15px;
    height:15px;
}
.food-item-icon{
    width:25px;
    text-align:center;
    font-size:19px;
    line-height:1;
    filter:saturate(1.05);
}
.food-item-text{
    min-width:0;
}
.included-note{
    margin:5px 4px 0;
    font-size:10.5px;
}

/* Braai fixed-inclusion card */
.fixed-inclusions{
    padding:11px 13px;
}
.fixed-inclusions h4,
.spit-package h4{
    display:flex;
    align-items:center;
    gap:7px;
    margin:0 0 3px;
    font-size:13px;
}
.fixed-inclusions p,
.spit-package p{
    margin:0 0 8px;
    font-size:11.5px;
    line-height:1.35;
}
.fixed-food-icon{
    font-size:18px;
    line-height:1;
}

/* Compact fixed Spitbraai packages with the same visual language */
.spit-package{
    gap:8px;
}
.spit-package>div{
    padding:10px 11px;
}
.spit-package .menu-alert{
    padding:8px 11px;
    font-size:11.5px;
}

/* Slightly reduce vertical space of the entire builder while preserving readability */
.menu-builder{padding:18px 20px}
.menu-builder-head{padding-bottom:11px}
.menu-builder-head h2{font-size:28px;margin-bottom:5px}
.menu-builder-head p{font-size:12px;line-height:1.35}
.menu-choice-photo-row{margin:14px 0 16px}
.enquiry-builder{margin-top:13px}

@media(max-width:1100px){
    .selection-group label{font-size:12px}
}
@media(max-width:760px){
    .menu-build-panel{padding:11px}
    .selection-group{padding:9px}
    .selection-group label{
        grid-template-columns:17px 26px minmax(0,1fr);
        padding:5px 3px;
        font-size:13px;
    }
    .food-item-icon{font-size:20px}
    .category-icon{width:36px;height:36px;flex-basis:36px;font-size:21px}
}


/* =========================================================
   BUILD 065 - LUXURY PURPLE MARBLE MENU PANELS
   Approved design: rich purple marble background, gold trim,
   glow accents, and larger selectable-item text.
   ========================================================= */

.menu-build-panel,
.selection-group,
.fixed-inclusions,
.spit-package>div{
    background:
        radial-gradient(circle at 82% 22%, rgba(111,0,83,.18), transparent 30%),
        radial-gradient(circle at 18% 78%, rgba(91,0,67,.18), transparent 28%),
        linear-gradient(135deg, rgba(28,7,31,.98), rgba(15,5,21,.98));
    position:relative;
    overflow:hidden;
}

.menu-build-panel::before,
.selection-group::before,
.fixed-inclusions::before,
.spit-package>div::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.42;
    background:
        linear-gradient(118deg, transparent 0 18%, rgba(185,15,126,.18) 19%, transparent 20% 31%, rgba(255,139,32,.11) 32%, transparent 33% 100%),
        linear-gradient(64deg, transparent 0 41%, rgba(143,0,99,.15) 42%, transparent 43% 56%, rgba(249,178,53,.08) 57%, transparent 58% 100%),
        radial-gradient(ellipse at 26% 36%, rgba(124,0,91,.16), transparent 34%),
        radial-gradient(ellipse at 70% 65%, rgba(85,0,72,.14), transparent 31%);
    mix-blend-mode:screen;
}

.menu-build-panel{
    border:1px solid #8f6b00;
    box-shadow:0 0 0 1px rgba(255,208,56,.06), inset 0 0 28px rgba(117,0,92,.12);
}

.selection-group,
.fixed-inclusions,
.spit-package>div{
    border:1px solid #b78a00;
    box-shadow:
        inset 0 0 18px rgba(136,0,95,.10),
        0 0 12px rgba(120,0,100,.06);
}

.selection-group:hover{
    border-color:#d7ad18;
    box-shadow:
        inset 0 0 22px rgba(166,0,117,.12),
        0 0 16px rgba(191,61,170,.10);
}

.category-icon{
    background:
        radial-gradient(circle at 35% 35%, rgba(115,8,95,.62), rgba(16,8,20,.94) 70%);
    box-shadow:
        inset 0 0 10px rgba(197,38,163,.16),
        0 0 9px rgba(188,30,154,.12);
}

.menu-download-inline{
    background:
        linear-gradient(135deg, rgba(99,0,74,.78), rgba(32,8,32,.92));
    border-color:#c79a00;
    box-shadow:
        inset 0 0 12px rgba(188,13,151,.12),
        0 0 12px rgba(193,18,153,.10);
}

.menu-choice-card.is-selected{
    box-shadow:
        0 0 0 1px rgba(255,211,48,.14),
        0 0 18px rgba(237,52,186,.42),
        inset 0 -3px 0 #f126ae;
}

/* Larger and easier-to-read selectable menu items */
.selection-group label{
    font-size:13.5px;
    line-height:1.28;
    padding:4px 4px;
    grid-template-columns:18px 27px minmax(0,1fr);
    gap:8px;
}
.selection-group input[type="checkbox"]{
    width:16px;
    height:16px;
}
.food-item-icon{
    width:27px;
    font-size:20px;
}
.food-item-text{
    font-weight:500;
    letter-spacing:.05px;
}

/* Keep headings prominent */
.legend-title{
    font-size:14.5px;
}
.selection-group legend .legend-copy>span:not(.legend-title){
    font-size:10.5px;
}

/* More polished section dividers */
.selection-group legend{
    border-bottom:1px dotted rgba(194,147,0,.58);
    width:100%;
    padding-bottom:8px;
}
.selection-count{
    border:1px solid #9c7800;
    background:rgba(4,4,8,.65);
    color:#fff;
}

/* Responsive tuning */
@media(max-width:1050px){
    .selection-group label{
        font-size:13px;
    }
}
@media(max-width:760px){
    .selection-group label{
        font-size:13.5px;
        line-height:1.3;
    }
}

/* =========================================================
   BUILD 066 - APPROVED DEEP PURPLE / GOLD VEIN MENU TEXTURE
   Replaces the faint diagonal treatment with a richer,
   fine-veined luxury marble effect while retaining Build 065.
   ========================================================= */
.menu-build-panel,
.selection-group,
.fixed-inclusions,
.spit-package>div{
    background-color:#100612 !important;
    background-image:
      radial-gradient(ellipse at 22% 18%, rgba(87,0,67,.32) 0%, rgba(35,4,38,.18) 28%, transparent 55%),
      radial-gradient(ellipse at 78% 72%, rgba(111,0,78,.24) 0%, rgba(31,3,33,.12) 32%, transparent 58%),
      repeating-linear-gradient(164deg, transparent 0 31px, rgba(218,29,154,.08) 32px, transparent 34px 68px),
      repeating-linear-gradient(151deg, transparent 0 53px, rgba(255,177,34,.055) 54px, rgba(255,177,34,.11) 55px, transparent 57px 112px),
      linear-gradient(135deg,#160719 0%,#0d0511 48%,#170719 100%) !important;
}

.menu-build-panel::before,
.selection-group::before,
.fixed-inclusions::before,
.spit-package>div::before{
    opacity:.72 !important;
    background:
      repeating-linear-gradient(157deg, transparent 0 74px, rgba(232,36,166,.11) 75px, transparent 77px 141px),
      repeating-linear-gradient(169deg, transparent 0 103px, rgba(255,184,38,.10) 104px, rgba(255,184,38,.20) 105px, transparent 107px 193px),
      radial-gradient(ellipse at 35% 45%, rgba(131,0,92,.13), transparent 42%),
      radial-gradient(ellipse at 73% 26%, rgba(104,0,78,.11), transparent 38%) !important;
    mix-blend-mode:screen;
}

/* remove any older broad decorative diagonal pseudo-element lines */
.selection-group::after,
.fixed-inclusions::after,
.spit-package>div::after{
    opacity:.18;
}


/* =========================================================
   BUILD 067 - MENU HERO OPTION 2
   Premium angular purple/gold catering showcase.
   ========================================================= */
.catering-hero-combined{
    position:relative; overflow:hidden; border:1px solid #c89a08;
    border-radius:12px; padding:18px 20px;
    background:
      radial-gradient(circle at 26% 18%,rgba(151,25,130,.18),transparent 30%),
      linear-gradient(112deg,#150016 0%,#260020 38%,#08070c 100%);
    box-shadow:inset 0 0 0 1px rgba(255,208,48,.12),0 0 22px rgba(116,0,93,.18);
}
.catering-hero-combined:before,.catering-hero-combined:after{content:"";position:absolute;pointer-events:none;z-index:0}
.catering-hero-combined:before{left:18px;top:0;bottom:0;width:46%;background:linear-gradient(115deg,transparent 0 8%,rgba(238,182,28,.85) 8.2% 8.6%,transparent 8.8% 91%,rgba(238,182,28,.85) 91.2% 91.6%,transparent 91.8%);opacity:.8}
.catering-hero-combined:after{inset:8px;border:1px solid rgba(225,176,22,.25);border-radius:8px}
.catering-hero-combined>*{position:relative;z-index:1}
.catering-hero-combined .catering-hero-copy{padding:10px 34px 6px;max-width:560px}
.catering-hero-combined .catering-hero-copy .eyebrow{letter-spacing:2px;color:#f3cf36}
.catering-hero-combined .catering-hero-copy h1{font-family:Georgia,serif;font-size:clamp(42px,4vw,66px);line-height:1;color:#e5b92e;text-shadow:0 2px 8px #000}
.catering-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:24px auto 0;max-width:500px}
.catering-benefits>div{display:flex;flex-direction:column;align-items:center;gap:7px;color:#fff;text-transform:uppercase;font-size:11px;font-weight:700;line-height:1.25;padding:0 10px;border-right:1px solid rgba(219,170,24,.55)}
.catering-benefits>div:last-child{border-right:0}
.benefit-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid #c99a0a;border-radius:50%;color:#f2c62d;font-size:22px;background:rgba(6,5,10,.55);box-shadow:0 0 12px rgba(181,38,145,.16)}
.catering-feature{overflow:hidden;border:1px solid #a77d00;border-radius:8px;background:linear-gradient(180deg,rgba(35,3,31,.96),rgba(6,6,10,.96));box-shadow:inset 0 0 16px rgba(123,0,88,.12)}
.catering-feature-title{min-height:78px;align-items:center;padding:8px 5px;font-size:13px;border-bottom:1px solid rgba(198,151,8,.55)}
.catering-feature img{height:178px;border:0;border-radius:0;object-fit:cover}
@media(max-width:1180px){.catering-hero-combined:before{display:none}.catering-hero-combined .catering-hero-copy{padding:10px}.catering-benefits{margin-top:18px}}
@media(max-width:560px){.catering-benefits{grid-template-columns:repeat(2,1fr);row-gap:16px}.catering-benefits>div:nth-child(2){border-right:0}.catering-feature-title{min-height:62px;font-size:11px}.catering-feature img{height:145px}}

/* =========================================================
   BUILD 068 - TWO CATERING MENU TABS + STANDARD GROUP MENU
   Tab 1: Standard Menu - Churches, Schools and Other
   Tab 2: Specialized Menus - Build Your Own
   ========================================================= */
.catering-menu-tabs{padding:18px 20px 16px;margin-bottom:14px;background:linear-gradient(135deg,rgba(23,5,26,.98),rgba(7,6,11,.98));border:1px solid #a57c00}
.catering-tab-intro{text-align:center;margin-bottom:13px}
.catering-tab-intro h2{margin:3px 0 5px;color:#efc83c;font-family:"Segoe UI",Tahoma,Arial,sans-serif;font-size:27px;font-weight:600}
.catering-tab-intro p{margin:0;color:#d8d2da;font-size:13px}
.catering-tab-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:980px;margin:0 auto}
.catering-tab-btn{appearance:none;border:1px solid #886900;border-radius:9px;background:linear-gradient(180deg,#111016,#08070c);color:#fff;padding:13px 18px;cursor:pointer;text-align:center;transition:.2s ease;box-shadow:inset 0 0 15px rgba(93,0,80,.08)}
.catering-tab-btn strong{display:block;color:#e6bd32;font-family:"Segoe UI",Tahoma,Arial,sans-serif;font-size:17px;font-weight:700;letter-spacing:.15px}
.catering-tab-btn span{display:block;margin-top:3px;color:#d7d1d8;font-size:12px}
.catering-tab-btn:hover,.catering-tab-btn.active{border-color:#e0b526;background:linear-gradient(180deg,#4c083f,#1b061c);box-shadow:0 0 18px rgba(185,30,150,.18),inset 0 -3px 0 #e6b927}
.catering-tab-btn.active strong{color:#ffd43b}
.catering-tab-panel[hidden]{display:none!important}

.standard-group-menu{padding:19px 20px;background:linear-gradient(135deg,rgba(15,12,17,.99),rgba(6,6,9,.99));border:1px solid #a67d00}
.standard-menu-heading{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:3px 4px 15px;border-bottom:1px solid rgba(206,159,9,.42)}
.standard-menu-heading h2{margin:3px 0 5px;color:#edc43b;font-family:"Segoe UI",Tahoma,Arial,sans-serif;font-size:29px;font-weight:600}
.standard-menu-heading p{margin:0;color:#d8d4d9;font-size:13px;line-height:1.45;max-width:830px}
.standard-menu-people{min-width:148px;text-align:center;border:1px solid #c2950a;border-radius:9px;padding:9px 15px;background:linear-gradient(180deg,rgba(71,8,57,.72),rgba(11,8,13,.95));box-shadow:inset 0 0 16px rgba(162,0,123,.11)}
.standard-menu-people span,.standard-menu-people b{display:block;color:#ddd;font-size:9px;letter-spacing:1px}
.standard-menu-people strong{display:block;color:#f3c932;font-size:37px;line-height:1;font-family:"Segoe UI",Tahoma,Arial,sans-serif}
.standard-menu-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}
.standard-menu-summary>div{display:grid;grid-template-columns:35px 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;padding:9px 11px;border:1px solid #725900;border-radius:7px;background:linear-gradient(180deg,rgba(30,27,31,.94),rgba(10,9,12,.98))}
.standard-menu-summary .summary-icon{grid-row:1/3;font-size:25px;text-align:center}
.standard-menu-summary small{color:#bdb7bf;font-size:9px;text-transform:uppercase;letter-spacing:.7px}
.standard-menu-summary strong{color:#eac23b;font-size:12px;font-weight:600}
.schedule-day{display:grid;grid-template-columns:112px minmax(0,1fr);gap:10px;margin:12px 0 16px}
.day-badge{border:1px solid #c49508;border-radius:8px;background:linear-gradient(180deg,#1d1820,#09090c);text-align:center;padding:12px 7px;box-shadow:inset 0 0 18px rgba(102,0,88,.10)}
.day-badge span{display:block;color:#efc638;font-size:12px;font-weight:700;letter-spacing:1px}
.day-badge strong{display:block;color:#f4ca32;font-size:53px;line-height:1.05;font-family:"Segoe UI",Tahoma,Arial,sans-serif}
.day-badge small{display:block;color:#ddd;font-size:10px;margin-top:7px}
.day-meals{display:grid;gap:11px}
.meal-schedule{border:1px solid #8f6c00;border-radius:8px;overflow:hidden;background:linear-gradient(135deg,rgba(28,7,31,.97),rgba(9,8,12,.99));box-shadow:inset 0 0 22px rgba(113,0,90,.08)}
.meal-schedule>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 13px;background:linear-gradient(90deg,rgba(79,9,60,.74),rgba(20,9,19,.95),rgba(69,21,8,.48));border-bottom:1px solid #9d7700}
.meal-schedule>header>div:first-child{display:flex;align-items:center;gap:9px}
.meal-icon{font-size:24px}
.meal-schedule h3{margin:0;color:#f0c537;text-transform:uppercase;font-family:"Segoe UI",Tahoma,Arial,sans-serif;font-size:20px;letter-spacing:.7px}
.meal-meta{text-align:right}.meal-meta span{display:block;color:#bdb8be;font-size:9px;text-transform:uppercase}.meal-meta strong{display:block;color:#f7c83a;font-size:15px}
.meal-table-wrap{overflow-x:auto}
.meal-table{width:100%;border-collapse:collapse;min-width:620px}
.meal-table th{padding:7px 10px;border-bottom:1px solid #705600;border-right:1px solid #5f4900;background:rgba(7,7,10,.72);color:#e7c13c;text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.25px}
.meal-table th:nth-child(2),.meal-table th:nth-child(3){width:22%}
.meal-table td{padding:7px 10px;border-bottom:1px solid rgba(139,105,0,.34);border-right:1px solid rgba(116,87,0,.28);color:#ece9ed;font-size:12.5px}
.meal-table td:nth-child(2){color:#cfc9d0}.meal-table td:nth-child(3){color:#f2bb2d;font-weight:700}
.meal-table tr:last-child td{border-bottom:0}.meal-table th:last-child,.meal-table td:last-child{border-right:0}
.standard-menu-footer-note{display:grid;gap:4px;margin-top:8px;padding:12px 14px;border:1px solid #8c6a00;border-radius:7px;background:linear-gradient(90deg,rgba(72,6,56,.35),rgba(8,8,11,.94));text-align:center}
.standard-menu-footer-note strong{color:#efc83b;font-size:14px}.standard-menu-footer-note span{color:#d9d4da;font-size:11.5px;line-height:1.4}.standard-menu-footer-note small{color:#aaa3ad;font-size:9.5px}
.specialized-menu-note{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px;padding:11px 15px;border:1px solid #8c6b00;background:linear-gradient(90deg,rgba(76,6,59,.43),rgba(8,8,11,.96))}
.specialized-menu-note strong{color:#efc43a;font-family:"Segoe UI",Tahoma,Arial,sans-serif;font-size:16px}.specialized-menu-note span{color:#eee;font-size:12px}
/* Keep the photo captions in the same clean site typeface used on the other pages. */
.catering-feature-title{font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;font-weight:600}

@media(max-width:900px){
    .standard-menu-summary{grid-template-columns:repeat(2,1fr)}
    .standard-menu-heading{align-items:flex-start}.standard-menu-people{min-width:125px}
    .schedule-day{grid-template-columns:86px minmax(0,1fr)}
    .day-badge strong{font-size:43px}
}
@media(max-width:640px){
    .catering-tab-buttons{grid-template-columns:1fr}
    .standard-menu-heading{display:grid}.standard-menu-people{justify-self:stretch}
    .standard-menu-summary{grid-template-columns:1fr 1fr}
    .schedule-day{grid-template-columns:1fr}.day-badge{display:flex;align-items:center;justify-content:center;gap:10px;padding:8px}.day-badge strong{font-size:34px}.day-badge small{margin:0}
    .specialized-menu-note{display:grid;text-align:center}
}

/* Build 069: richer restaurant-menu treatment for Standard Group Catering */
.menu-showcase{position:relative;overflow:hidden;background:radial-gradient(circle at 12% 0%,rgba(109,54,8,.18),transparent 28%),linear-gradient(145deg,#09090b 0%,#140b13 48%,#08090b 100%);border-color:#b98c09;box-shadow:inset 0 0 45px rgba(132,72,0,.08),0 10px 30px rgba(0,0,0,.2)}
.menu-showcase:before,.menu-showcase:after{content:"";position:absolute;left:18px;right:18px;height:1px;background:linear-gradient(90deg,transparent,#d4a918 12%,#f0cd52 50%,#d4a918 88%,transparent)}
.menu-showcase:before{top:8px}.menu-showcase:after{bottom:8px}
.menu-showcase-heading{display:grid;grid-template-columns:minmax(420px,1.4fr) minmax(340px,.95fr) 148px;gap:16px;align-items:center;padding:11px 4px 17px}
.menu-showcase-heading h2{font-family:Georgia,"Times New Roman",serif;font-size:31px;letter-spacing:.2px;text-shadow:0 2px 12px rgba(222,164,20,.12)}
.sample-menu-alert{display:flex;align-items:center;justify-content:center;gap:12px;padding:11px 14px;border:1px solid #d0a20d;border-radius:9px;background:linear-gradient(135deg,rgba(102,4,70,.78),rgba(39,3,32,.88));box-shadow:inset 0 0 20px rgba(255,197,30,.05)}
.sample-alert-icon{display:grid;place-items:center;flex:0 0 39px;width:39px;height:39px;border-radius:50%;background:#efc62d;color:#2a061d;font:bold 28px/1 Georgia,serif;border:2px solid #ffe45e}
.sample-menu-alert strong{display:block;color:#f3ce3d;font-size:14px;letter-spacing:.45px;text-align:center}.sample-menu-alert small{display:block;color:#f1edf1;font-size:10.5px;text-align:center;margin-top:3px}
.menu-ornament{display:flex;align-items:center;gap:15px;margin:2px 0 11px;color:#d6ad2c}.menu-ornament span{height:1px;flex:1;background:linear-gradient(90deg,transparent,#a98213)}.menu-ornament span:last-child{background:linear-gradient(90deg,#a98213,transparent)}.menu-ornament em{font-family:Georgia,"Times New Roman",serif;font-size:12px;letter-spacing:3px;color:#dfbd4a}
.day-badge b{display:block;color:#f0d56e;font-size:11px;margin:1px 0 3px}.meal-title-line{display:flex!important;align-items:center;gap:9px;flex-wrap:wrap}.meal-breakdown{color:#efd050;font-size:11px;font-weight:700;letter-spacing:.15px;margin-left:9px}.meal-breakdown i{font-style:normal;color:#8f6f12;padding:0 4px}
.meal-table th:nth-child(1){width:25%}.meal-table th:nth-child(2){width:34%}.meal-table th:nth-child(3){width:21%}.meal-table th:nth-child(4){width:20%}
.meal-table tbody td:nth-child(2){color:#e7e1e8}.meal-table tbody td:first-child{color:#f1edf2;font-weight:600}.meal-table tbody tr:hover{background:rgba(115,8,81,.16)}
.day-meals-grid-3,.day-meals-grid-2{display:grid;gap:9px}.day-meals-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.day-meals-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.day-meals-grid-3 .meal-schedule,.day-meals-grid-2 .meal-schedule{margin:0}.day-meals-grid-3 .meal-schedule header,.day-meals-grid-2 .meal-schedule header{padding:7px 9px}.day-meals-grid-3 .meal-schedule h3{font-size:17px}.day-meals-grid-3 .meal-breakdown{font-size:8.2px;margin-left:0;flex-basis:100%;padding-left:33px}.day-meals-grid-2 .meal-breakdown{font-size:9.2px}.day-meals-grid-3 .meal-table th,.day-meals-grid-3 .meal-table td{font-size:8.8px;padding:5px 6px}.day-meals-grid-2 .meal-table th,.day-meals-grid-2 .meal-table td{font-size:9.3px;padding:5px 7px}.day-meals-grid-3 .meal-meta span,.day-meals-grid-2 .meal-meta span{font-size:7px}.day-meals-grid-3 .meal-meta strong,.day-meals-grid-2 .meal-meta strong{font-size:13px}
.menu-showcase-footer{border-top:1px solid #b88d11;border-bottom:1px solid #b88d11;background:linear-gradient(90deg,rgba(64,27,2,.55),rgba(69,5,49,.38),rgba(64,27,2,.55))}.menu-showcase-footer strong{font-family:Georgia,"Times New Roman",serif;letter-spacing:2px}
@media(max-width:1180px){.menu-showcase-heading{grid-template-columns:1fr 1fr}.standard-menu-people{grid-column:2;grid-row:1/3;justify-self:end}.sample-menu-alert{grid-column:1/2}.day-meals-grid-3{grid-template-columns:1fr}.day-meals-grid-2{grid-template-columns:1fr}.day-meals-grid-3 .meal-breakdown{font-size:10px;flex-basis:auto;padding-left:0}.day-meals-grid-3 .meal-table th,.day-meals-grid-3 .meal-table td,.day-meals-grid-2 .meal-table th,.day-meals-grid-2 .meal-table td{font-size:10px}}
@media(max-width:760px){.menu-showcase-heading{grid-template-columns:1fr}.standard-menu-people,.sample-menu-alert{grid-column:1;grid-row:auto;justify-self:stretch}.menu-ornament em{font-size:9px;letter-spacing:1.5px}.meal-breakdown{flex-basis:100%;margin-left:31px;font-size:9px}}

/* Build 070 - Standard menu poster-style layout */
@media (min-width:1181px){
  .standard-group-menu.menu-showcase{padding:10px 10px 12px;border-color:#d39c00;box-shadow:inset 0 0 26px rgba(211,156,0,.05)}
  .standard-menu-summary{gap:10px;margin:8px 0 8px}
  .standard-menu-summary>div{padding:7px 10px;min-height:54px;border-color:#a77e00}
  .menu-ornament{margin:4px 0 7px}
  .showcase-day{gap:5px;margin:5px 0 6px;align-items:stretch}
  .showcase-day .day-badge{min-width:0;padding:9px 4px;border-color:#d6a000;border-radius:8px;background:linear-gradient(180deg,#0b0c0e,#07080a);display:flex;flex-direction:column;align-items:center;justify-content:center}
  .showcase-day .day-badge span{font-size:13px;font-weight:700}
  .showcase-day .day-badge strong{font-size:52px;line-height:.95;margin:8px 0 5px}
  .showcase-day .day-badge b{font-size:10px;color:#fff}
  .showcase-day .day-badge small{font-size:10px;color:#ddd;margin-top:2px}
  .showcase-day .day-photo,.showcase-day .day-feature{overflow:hidden;border:1px solid #d39c00;border-radius:7px;background:#060709;position:relative}
  .showcase-day .day-photo img,.showcase-day .day-feature img{width:100%;height:100%;object-fit:cover;display:block}
  .showcase-day .day-feature span{position:absolute;right:9px;top:50%;transform:translateY(-50%);width:45%;text-align:center;color:#efc331;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:14px;line-height:1.45;text-shadow:0 1px 3px #000}
  .showcase-day-1{grid-template-columns:88px 142px minmax(0,1fr) 238px}
  .showcase-day-2{grid-template-columns:88px 92px minmax(0,1fr)}
  .showcase-day-3{grid-template-columns:88px 122px minmax(0,1fr) 184px}
  .showcase-day .day-meals{min-width:0}
  .showcase-day .meal-schedule{border-color:#c99600;border-radius:7px;height:100%}
  .showcase-day .meal-schedule>header{padding:6px 9px;min-height:39px}
  .showcase-day .meal-icon{font-size:20px}
  .showcase-day .meal-schedule h3{font-size:17px;line-height:1}
  .showcase-day .meal-breakdown{font-size:9px;white-space:nowrap;margin-left:5px}
  .showcase-day .meal-meta span{font-size:7px}.showcase-day .meal-meta strong{font-size:14px}
  .showcase-day .meal-table-wrap{overflow:visible}
  .showcase-day .meal-table{min-width:0;width:100%;table-layout:fixed}
  .showcase-day .meal-table th,.showcase-day .meal-table td{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .showcase-day .meal-table th{padding:4px 7px;font-size:8.5px}
  .showcase-day .meal-table td{padding:4px 7px;font-size:10px;line-height:1.15}
  .showcase-day .meal-table th:nth-child(1){width:25%}
  .showcase-day .meal-table th:nth-child(2){width:34%}
  .showcase-day .meal-table th:nth-child(3){width:21%}
  .showcase-day .meal-table th:nth-child(4){width:20%}
  .day-meals-grid-3{gap:6px;grid-template-columns:repeat(3,minmax(0,1fr))}
  .day-meals-grid-2{gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}
  .day-meals-grid-3 .meal-schedule h3{font-size:15px}
  .day-meals-grid-3 .meal-breakdown{font-size:7.4px;padding-left:28px;line-height:1.15}
  .day-meals-grid-3 .meal-table th,.day-meals-grid-3 .meal-table td{font-size:7.8px;padding:3px 4px}
  .day-meals-grid-3 .meal-table th:nth-child(1){width:26%}.day-meals-grid-3 .meal-table th:nth-child(2){width:34%}.day-meals-grid-3 .meal-table th:nth-child(3){width:20%}.day-meals-grid-3 .meal-table th:nth-child(4){width:20%}
  .day-meals-grid-2 .meal-table th,.day-meals-grid-2 .meal-table td{font-size:8.4px;padding:3.5px 5px}
  .standard-menu-footer-note.menu-showcase-footer{grid-template-columns:1fr auto;align-items:center;padding:8px 16px;margin-top:6px;background:linear-gradient(90deg,#211007,#09090b,#211007);border-color:#c99600}
  .standard-menu-footer-note.menu-showcase-footer strong{font-family:Georgia,'Times New Roman',serif;letter-spacing:1px;font-size:13px}
  .standard-menu-footer-note.menu-showcase-footer span{display:none}
  .standard-menu-footer-note.menu-showcase-footer small{font-size:9px;color:#c6b788}
}

@media (max-width:1180px){
  .showcase-day .day-photo,.showcase-day .day-feature{display:none}
}

/* Build 071 - site typography + menu-only zoom + PDF download tools */
.standard-group-menu.menu-showcase,
.standard-group-menu.menu-showcase h2,
.standard-group-menu.menu-showcase h3,
.standard-group-menu.menu-showcase .menu-ornament em,
.standard-group-menu.menu-showcase .day-feature span,
.standard-group-menu.menu-showcase .standard-menu-footer-note strong{
  font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;
}
.standard-group-menu.menu-showcase h2{font-weight:600;letter-spacing:0}
.standard-group-menu.menu-showcase .menu-ornament em{font-style:normal;font-weight:600}
.standard-group-menu.menu-showcase .day-feature span{font-style:italic;font-weight:500}
.standard-group-menu.menu-showcase .standard-menu-footer-note strong{font-weight:600}

.standard-menu-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 10px;padding:11px 13px;border:1px solid #997400;border-radius:8px;background:linear-gradient(135deg,rgba(31,18,30,.98),rgba(7,8,11,.98));box-shadow:inset 0 0 18px rgba(204,151,0,.04)}
.menu-zoom-copy{display:flex;align-items:center;gap:10px;min-width:260px}.menu-tools-icon{font-size:23px}.menu-zoom-copy strong{display:block;color:#efc63b;font-size:12px;letter-spacing:.5px}.menu-zoom-copy small{display:block;color:#c9c3ca;font-size:10px;margin-top:2px}
.menu-zoom-controls{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.menu-zoom-controls button,.menu-zoom-controls a{min-height:34px;border:1px solid #a47b00;border-radius:6px;background:#111015;color:#f0c83c;font:600 11px/1 "Segoe UI",Tahoma,Arial,sans-serif;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;transition:.16s ease}.menu-zoom-controls button:hover,.menu-zoom-controls a:hover{background:#321027;border-color:#e0b620;color:#ffe06c}.menu-zoom-controls button:disabled{opacity:.38;cursor:default;background:#111015}.menu-zoom-controls #menu-zoom-level{min-width:58px;text-align:center;color:#fff;font-weight:700;font-size:12px}.menu-zoom-controls .menu-reset-btn{color:#ddd}.menu-zoom-controls .menu-sample-download{background:linear-gradient(180deg,#7b075d,#4a063b);color:#ffe25e;border-color:#d3a20a;margin-left:5px}
.standard-menu-zoom-viewport{width:100%;overflow:auto;scrollbar-color:#b58a0b #18151a;scrollbar-width:thin;padding-bottom:2px}.standard-menu-zoom-viewport.is-zoomed{border-radius:8px}.standard-menu-zoom-viewport .standard-group-menu{min-width:0;transform-origin:top left}
@media(max-width:860px){.standard-menu-tools{align-items:flex-start;flex-direction:column}.menu-zoom-controls{justify-content:flex-start}.menu-zoom-copy small{max-width:520px}}
@media(max-width:520px){.menu-zoom-controls{gap:5px}.menu-zoom-controls button,.menu-zoom-controls a{padding:0 9px;font-size:10px}.menu-zoom-controls .menu-sample-download{flex-basis:100%;margin-left:0}.menu-zoom-copy{min-width:0}}


/* Build 072 - moveable reading magnifier for the Standard Menu */
.standard-menu-zoom-viewport{position:relative}
.menu-zoom-controls .menu-lens-toggle{background:linear-gradient(180deg,#1f1720,#0c0b0e);color:#f4d452;border-color:#b48b0b}
.menu-zoom-controls .menu-lens-toggle.active{background:linear-gradient(180deg,#8a0867,#53053f);border-color:#f0c534;box-shadow:0 0 0 1px rgba(240,197,52,.18),0 0 16px rgba(153,12,113,.22)}
.standard-menu-zoom-viewport.lens-active #standard-sample-menu .meal-table td,
.standard-menu-zoom-viewport.lens-active #standard-sample-menu .meal-table th,
.standard-menu-zoom-viewport.lens-active #standard-sample-menu .meal-breakdown,
.standard-menu-zoom-viewport.lens-active #standard-sample-menu .meal-schedule h3{cursor:zoom-in}
.menu-magnifier{position:absolute;z-index:80;width:310px;min-height:120px;max-width:calc(100% - 16px);padding:12px 16px 14px;border:2px solid #e2b521;border-radius:18px;background:radial-gradient(circle at 25% 15%,rgba(126,10,95,.92),rgba(19,10,22,.98) 58%,rgba(5,6,9,.99));box-shadow:0 12px 30px rgba(0,0,0,.62),inset 0 0 0 2px rgba(255,222,75,.12),0 0 20px rgba(196,143,0,.22);pointer-events:none;opacity:0;visibility:hidden;transform:scale(.96);transition:opacity .1s ease,transform .1s ease;display:flex;flex-direction:column;justify-content:center}
.menu-magnifier.visible{opacity:1;visibility:visible;transform:scale(1)}
.menu-magnifier-label{font:700 9px/1.1 "Segoe UI",Tahoma,Arial,sans-serif;letter-spacing:1.7px;text-transform:uppercase;color:#f0c634;margin-bottom:8px}
.menu-magnifier-text{font:700 23px/1.28 "Segoe UI",Tahoma,Arial,sans-serif;color:#fff;text-shadow:0 1px 1px #000;overflow-wrap:anywhere}
@media(max-width:700px){.menu-magnifier{width:260px;min-height:105px}.menu-magnifier-text{font-size:19px}.menu-zoom-controls .menu-lens-toggle{flex-basis:100%}}

/* Build 073: Option 4 compact icon-focused catering selector */
.catering-menu-choice-v4{margin:18px 0 20px;padding:16px 18px 12px;border:1px solid #a77b00;border-radius:10px;background:radial-gradient(circle at 50% 0,rgba(80,18,55,.22),transparent 42%),linear-gradient(180deg,#100d10,#09080a);box-shadow:inset 0 0 28px rgba(0,0,0,.7)}
.catering-menu-choice-v4 .catering-tab-intro{text-align:center;margin-bottom:12px}
.catering-menu-choice-v4 .catering-tab-intro h2{margin:0;color:#e9c44b;font-family:"Segoe UI",Tahoma,Arial,sans-serif;font-size:27px;font-weight:700;letter-spacing:.2px}
.catering-menu-choice-v4 .catering-tab-intro h2 span{color:#8e6d19;font-weight:400;margin:0 10px}
.catering-menu-choice-v4 .catering-tab-intro p{margin:4px 0 0;color:#ddd6dc;font-size:13px}
.catering-menu-choice-v4 .catering-tab-buttons{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:1040px;margin:0 auto}
.catering-menu-choice-v4 .catering-tab-btn{position:relative;overflow:hidden;min-height:210px;padding:18px 22px 15px;border:1px solid #a77b00;border-radius:12px;background:radial-gradient(circle at 15% 55%,rgba(87,23,59,.25),transparent 38%),linear-gradient(145deg,#151217,#08090a);box-shadow:inset 0 0 24px rgba(0,0,0,.65);display:flex;flex-direction:column;align-items:center}
.catering-menu-choice-v4 .catering-tab-btn:hover,.catering-menu-choice-v4 .catering-tab-btn.active{border-color:#e5be3d;background:radial-gradient(circle at 18% 55%,rgba(110,28,77,.34),transparent 40%),linear-gradient(145deg,#171318,#09090a);box-shadow:0 0 16px rgba(229,190,61,.16),inset 0 0 24px rgba(0,0,0,.65)}
.catering-menu-choice-v4 .choice-icon{width:62px;height:62px;border:4px solid #d6aa2e;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:30px;background:#161216;margin-bottom:6px}
.catering-menu-choice-v4 .catering-tab-btn strong{font-size:20px;text-transform:uppercase;color:#e7c14a;line-height:1.1}
.catering-menu-choice-v4 .choice-sub{font-size:12px;color:#eee7ec;margin:4px 0 12px}
.catering-menu-choice-v4 .choice-features{display:grid;grid-template-columns:repeat(3,1fr);width:100%;max-width:410px;margin:auto 0 12px}
.catering-menu-choice-v4 .choice-features b{font-size:22px;color:#e8c448;font-weight:600;border-right:1px solid rgba(194,148,28,.35)}
.catering-menu-choice-v4 .choice-features b:last-child{border-right:0}
.catering-menu-choice-v4 .choice-features small{display:block;color:#f1ebef;font-size:10px;line-height:1.15;font-weight:600;margin-top:4px}
.catering-menu-choice-v4 .choice-action{display:block;width:70%;min-width:220px;margin-top:auto;padding:10px 14px;border:1px solid #e0b52e;border-radius:8px;background:linear-gradient(180deg,#72085d,#43033c);color:#ffe04d!important;font-size:13px!important;font-weight:800;box-shadow:inset 0 -3px 0 rgba(236,191,48,.75)}
.catering-menu-choice-v4 .catering-tab-btn:not(.active) .choice-action{background:linear-gradient(180deg,#e7c44d,#b88618);color:#17100a!important}
.catering-menu-choice-v4 .choice-footer{text-align:center;color:#b9932b;font-size:11px;letter-spacing:3px;margin-top:11px}
@media(max-width:800px){.catering-menu-choice-v4 .catering-tab-buttons{grid-template-columns:1fr}.catering-menu-choice-v4 .catering-tab-intro h2{font-size:23px}.catering-menu-choice-v4 .catering-tab-btn{min-height:195px}}

/* =========================================================
   BUILD 074 - MENU PAGE POLISH
   - Compact top catering selector to reduce scrolling
   - Match hero title typography to the rest of the site
   - Warm faded-brown treatment for standard-menu tables
   - Warm brown specialized-menu intro panel
   - Final approved charcoal + amber treatment for build-your-own cards
   - Larger menu-item text for easier reading
   ========================================================= */

/* Use the same clean site font for the Menu & Catering hero title */
.catering-hero-combined .catering-hero-copy h1{
    font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;
    font-weight:600;
    letter-spacing:-1px;
}

/* Compact the Choose Your Catering Menu block */
.catering-menu-choice-v4{
    margin:14px 0 16px;
    padding:11px 16px 8px;
}
.catering-menu-choice-v4 .catering-tab-intro{margin-bottom:8px}
.catering-menu-choice-v4 .catering-tab-intro h2{font-size:25px}
.catering-menu-choice-v4 .catering-tab-intro p{margin-top:2px;font-size:12px}
.catering-menu-choice-v4 .catering-tab-buttons{gap:14px;max-width:1040px}
.catering-menu-choice-v4 .catering-tab-btn{
    min-height:166px;
    padding:11px 20px 10px;
}
.catering-menu-choice-v4 .choice-icon{
    width:52px;height:52px;border-width:3px;font-size:25px;margin-bottom:4px;
}
.catering-menu-choice-v4 .catering-tab-btn strong{font-size:19px}
.catering-menu-choice-v4 .choice-sub{font-size:11px;margin:2px 0 7px}
.catering-menu-choice-v4 .choice-features{max-width:410px;margin:auto 0 7px}
.catering-menu-choice-v4 .choice-features b{font-size:18px}
.catering-menu-choice-v4 .choice-features small{font-size:9px;margin-top:2px;line-height:1.1}
.catering-menu-choice-v4 .choice-action{padding:7px 13px;font-size:12px!important;border-radius:7px}
.catering-menu-choice-v4 .choice-footer{font-size:9px;margin-top:7px;letter-spacing:3px}

/* Standard sample menu: richer faded-brown reading surface */
.standard-group-menu.menu-showcase{
    background:
      radial-gradient(circle at 20% 12%,rgba(125,70,18,.15),transparent 32%),
      radial-gradient(circle at 80% 85%,rgba(101,48,10,.13),transparent 34%),
      linear-gradient(145deg,#17110b 0%,#0b0a0a 48%,#181006 100%)!important;
}
.standard-group-menu.menu-showcase .meal-schedule{
    background:
      radial-gradient(circle at 30% 0,rgba(112,62,14,.16),transparent 38%),
      linear-gradient(145deg,#1c130a 0%,#0c0b0a 58%,#171008 100%)!important;
    border-color:#aa7c00;
}
.standard-group-menu.menu-showcase .meal-schedule>header{
    background:linear-gradient(90deg,rgba(83,35,15,.82),rgba(28,14,12,.96) 42%,rgba(8,8,9,.98))!important;
}
.standard-group-menu.menu-showcase .meal-table th{
    background:linear-gradient(180deg,rgba(45,27,11,.96),rgba(15,13,11,.98))!important;
}
.standard-group-menu.menu-showcase .meal-table td{
    background:linear-gradient(90deg,rgba(55,31,10,.32),rgba(13,12,11,.20))!important;
}
/* Slightly larger table text without making the menu bulky */
.standard-group-menu.menu-showcase .meal-table td{font-size:13.5px!important;line-height:1.18}
.standard-group-menu.menu-showcase .meal-table th{font-size:10.5px!important}
.standard-group-menu.menu-showcase .meal-breakdown{font-size:10px!important}

/* Specialized menu heading/builder area: same warm visual family */
.specialized-menu-note,
.menu-builder{
    background:
      radial-gradient(circle at 18% 18%,rgba(120,65,14,.18),transparent 34%),
      linear-gradient(145deg,#211408 0%,#100d0c 52%,#171008 100%)!important;
    border-color:#ad8100!important;
}
.menu-builder-head{
    background:linear-gradient(90deg,rgba(71,34,10,.18),transparent 72%);
}

/* Final approved Build-Your-Own look: charcoal bodies with amber header glow */
.menu-build-panel{
    background:linear-gradient(145deg,#111111 0%,#080909 58%,#12100d 100%)!important;
    border-color:#b18400!important;
    box-shadow:inset 0 0 24px rgba(0,0,0,.72)!important;
}
.menu-build-panel::before{opacity:0!important}
.selection-group,
.fixed-inclusions,
.spit-package>div{
    background:linear-gradient(180deg,#171819 0%,#0d0e0f 100%)!important;
    border-color:#bd8e00!important;
    box-shadow:inset 0 0 18px rgba(0,0,0,.48)!important;
}
.selection-group::before,
.fixed-inclusions::before,
.spit-package>div::before{opacity:0!important}
.selection-group::after,
.fixed-inclusions::after,
.spit-package>div::after{opacity:0!important}

/* Amber-brown category header band similar to the earlier meal schedule design */
.selection-group legend{
    position:relative;
    margin:-9px -11px 5px;
    width:calc(100% + 22px);
    padding:8px 11px 8px;
    border-bottom:1px solid #9d7400;
    background:
      radial-gradient(circle at 50% -60%,rgba(201,86,19,.26),transparent 62%),
      linear-gradient(180deg,rgba(82,31,11,.88),rgba(27,17,12,.94) 72%,rgba(15,15,15,.96));
    border-radius:6px 6px 0 0;
}
.selection-group label{
    color:#f0eef0;
    font-size:14.5px!important;
    line-height:1.3;
    padding:5px 5px!important;
    border-bottom:1px solid rgba(154,112,0,.22);
}
.selection-group label:last-of-type{border-bottom:0}
.selection-group label:hover{background:rgba(142,67,14,.17)}
.food-item-text{font-weight:500}
.legend-title{color:#f0c43b!important}
.selection-group legend .legend-copy>span:not(.legend-title){color:#e7bc34!important}
.category-icon{
    background:radial-gradient(circle at 35% 28%,rgba(121,47,16,.72),rgba(11,11,12,.96) 72%)!important;
    border-color:#c79500!important;
    box-shadow:inset 0 0 9px rgba(225,127,25,.12)!important;
}
.selection-count{background:#090909!important;border-color:#a17b00!important;color:#fff!important}

@media(max-width:1100px){
  .standard-group-menu.menu-showcase .meal-table td{font-size:12.5px!important}
  .selection-group label{font-size:13.5px!important}
}
@media(max-width:800px){
  .catering-menu-choice-v4 .catering-tab-btn{min-height:158px}
}
@media(max-width:760px){
  .selection-group legend{margin:-9px -9px 5px;width:calc(100% + 18px);padding-left:9px;padding-right:9px}
  .selection-group label{font-size:14px!important}
}

/* =========================================================
   BUILD 075 - FINAL MENU COMPACT / UNIFIED COLOUR PASS
   - Further reduce intro + selector height for easier mobile scrolling
   - Carry the approved warm faded brown/charcoal menu palette into hero
   ========================================================= */
.catering-hero-combined{
    min-height:205px!important;
    padding:12px 16px 10px!important;
    gap:18px!important;
    background:
      radial-gradient(circle at 20% 18%,rgba(128,67,14,.24),transparent 34%),
      radial-gradient(circle at 76% 82%,rgba(92,43,9,.15),transparent 38%),
      linear-gradient(145deg,#211407 0%,#0d0c0b 50%,#171008 100%)!important;
}
.catering-hero-combined .catering-hero-copy{padding:4px 24px 2px!important}
.catering-hero-combined .catering-hero-copy .eyebrow{margin-bottom:7px!important}
.catering-hero-combined .catering-hero-copy h1{margin:0 0 7px!important;font-size:clamp(38px,3.6vw,58px)!important;line-height:.98!important}
.catering-hero-combined .catering-hero-copy p{line-height:1.35!important}
.catering-benefits{margin-top:14px!important}
.catering-benefits>div{gap:4px!important;padding:0 8px!important}
.catering-feature-title{min-height:61px!important;padding:6px 4px!important;background:linear-gradient(180deg,rgba(66,28,10,.76),rgba(22,14,10,.94))!important}
.catering-feature img{height:150px!important}
.catering-feature{background:linear-gradient(180deg,rgba(49,25,9,.92),rgba(8,8,9,.98))!important}

.catering-menu-choice-v4{margin:10px 0 12px!important;padding:8px 14px 6px!important}
.catering-menu-choice-v4 .catering-tab-intro{margin-bottom:5px!important}
.catering-menu-choice-v4 .catering-tab-intro h2{font-size:23px!important}
.catering-menu-choice-v4 .catering-tab-intro p{margin-top:1px!important;font-size:11px!important}
.catering-menu-choice-v4 .catering-tab-buttons{gap:12px!important}
.catering-menu-choice-v4 .catering-tab-btn{min-height:145px!important;padding:8px 18px 7px!important}
.catering-menu-choice-v4 .choice-icon{width:45px!important;height:45px!important;font-size:22px!important;margin-bottom:2px!important}
.catering-menu-choice-v4 .catering-tab-btn strong{font-size:18px!important}
.catering-menu-choice-v4 .choice-sub{margin:1px 0 4px!important}
.catering-menu-choice-v4 .choice-features{margin:auto 0 4px!important}
.catering-menu-choice-v4 .choice-features b{font-size:16px!important}
.catering-menu-choice-v4 .choice-features small{font-size:8.5px!important;margin-top:1px!important}
.catering-menu-choice-v4 .choice-action{padding:6px 12px!important}
.catering-menu-choice-v4 .choice-footer{margin-top:4px!important;font-size:8px!important}

@media(max-width:1180px){
 .catering-hero-combined{padding:10px 14px!important;gap:12px!important}
 .catering-feature img{height:138px!important}
 .catering-benefits{margin-top:10px!important}
}
@media(max-width:800px){
 .catering-menu-choice-v4 .catering-tab-btn{min-height:138px!important}
}
@media(max-width:560px){
 .catering-hero-combined{width:calc(100% - 16px)!important;padding:9px 8px!important}
 .catering-hero-combined .catering-hero-copy{padding:2px 8px!important}
 .catering-hero-combined .catering-hero-copy h1{font-size:38px!important;margin-bottom:5px!important}
 .catering-benefits{row-gap:8px!important;margin-top:9px!important}
 .catering-feature-title{min-height:50px!important}
 .catering-feature img{height:118px!important}
 .catering-menu-choice-v4{padding:7px 8px 5px!important}
 .catering-menu-choice-v4 .catering-tab-btn{min-height:132px!important;padding:7px 10px 6px!important}
 .catering-menu-choice-v4 .choice-footer{letter-spacing:2px!important}
}

/* =========================================================
   BUILD 076 - FACILITIES OVERVIEW + VENUE PAGE STARTERS
   Styled to match the current Hoffanhein Lodge landing page.
   ========================================================= */
.facilities-page,.facility-detail-page{
    background:
      radial-gradient(circle at 50% 0%,rgba(96,0,91,.18),transparent 32%),
      linear-gradient(180deg,#120016 0%,#060509 55%,#110014 100%);
    padding:18px 0 24px;
}
.facilities-wrap{width:min(1450px,calc(100% - 34px));margin:0 auto}
.facilities-hero{
    width:min(1450px,calc(100% - 34px));
    margin:0 auto 16px;
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:28px;
    align-items:center;
    border:1px solid #b78d00;
    border-radius:7px;
    padding:24px 30px;
    background:
      radial-gradient(circle at 18% 50%,rgba(132,66,0,.22),transparent 34%),
      linear-gradient(90deg,#251009 0%,#12090e 42%,#08080b 100%);
    box-shadow:inset 0 0 0 1px rgba(255,213,51,.04);
}
.facilities-hero h1{margin:0 0 10px;color:#e8bd3d;font:normal clamp(34px,4vw,56px)/1 Georgia,"Times New Roman",serif;text-shadow:0 2px 5px #000}
.facilities-hero p{margin:0;max-width:720px;color:#eee9ef;font-size:16px;line-height:1.55}
.facilities-highlights{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.facilities-highlights>div{text-align:center;padding:3px 14px;border-left:1px solid rgba(229,185,39,.28)}
.facilities-highlights>div:first-child{border-left:0}
.facilities-highlights span{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 9px;border:1px solid var(--gold2);border-radius:50%;font-size:27px;color:var(--gold2);background:#09080b}
.facilities-highlights strong{display:block;color:#f0edf1;text-transform:uppercase;font-size:12px;line-height:1.35}
.facility-section{margin:0 0 15px;border:1px solid #a77e00;border-radius:7px;padding:13px;background:linear-gradient(180deg,rgba(16,8,19,.98),rgba(7,7,11,.98))}
.facility-section-heading{text-align:center;margin:0 0 11px}
.facility-section-heading h2{margin:0 0 4px;color:#eac33c;font:normal 30px Georgia,"Times New Roman",serif}
.facility-section-heading p{margin:0;color:#d9d3db;font-size:13px}
.main-venue-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.venue-card,.facility-card{overflow:hidden;border:1px solid #d0a300;border-radius:5px;background:linear-gradient(180deg,#0a090c,#101014);box-shadow:0 5px 16px rgba(0,0,0,.24)}
.venue-card img,.facility-card img{display:block;width:100%;height:160px;object-fit:cover;border-bottom:1px solid #b98f00}
.venue-card-title,.facility-card-title{display:flex;align-items:center;gap:10px;min-height:56px;padding:9px 10px;border-bottom:1px solid rgba(229,185,39,.25);background:linear-gradient(90deg,#180d08,#0a090d)}
.venue-card-title>span,.facility-card-title>span{font-size:25px;color:var(--gold2);min-width:28px;text-align:center}
.venue-card h3,.facility-card h3{margin:0;color:#f2cf38;font-size:15px;line-height:1.13}
.venue-card strong,.facility-card strong{display:block;margin-top:2px;color:#ffdc2c;font-size:13px}
.venue-card p,.facility-card p{margin:0;padding:11px 10px;color:#e7e2e8;font-size:13px;line-height:1.4;min-height:78px}
.venue-card>a{display:block;margin:0 8px 8px;padding:10px 8px;text-align:center;text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:bold;color:#ffe533;border:1px solid #c49b00;border-radius:4px;background:linear-gradient(180deg,#76006f,#390037)}
.venue-card>a:hover{filter:brightness(1.15)}
.additional-facilities{background:linear-gradient(180deg,rgba(22,8,25,.98),rgba(8,8,12,.98))}
.additional-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.facility-card img{height:130px}
.facility-card p{min-height:64px}
.facilities-cta{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;border:1px solid #aa8100;border-radius:7px;padding:16px 22px;background:linear-gradient(90deg,#1d0b06,#0a080c 60%,#1e071e)}
.facilities-cta-icon{font-size:44px}
.facilities-cta h2{margin:0 0 4px;color:#ebc23a;font:normal 21px Georgia,"Times New Roman",serif}
.facilities-cta p{margin:0;color:#d8d2da;font-size:13px}
.facilities-motto{text-align:center;color:#d2a900;font-size:11px;letter-spacing:4px;padding:14px 0 2px}

/* Individual venue page starter */
.venue-breadcrumb{display:flex;justify-content:flex-end;margin:0 0 10px}.venue-breadcrumb a{color:#f4cf39;text-decoration:none;border:1px solid #aa8300;padding:10px 14px;border-radius:4px;background:#0b0a0d;font-size:12px;font-weight:bold}
.venue-detail-hero{display:grid;grid-template-columns:1.2fr .8fr;min-height:440px;border:1px solid #b78e00;border-radius:7px;overflow:hidden;background:linear-gradient(90deg,#0c0b0e,#23100a)}
.venue-detail-photo img{width:100%;height:100%;min-height:440px;object-fit:cover;display:block}
.venue-detail-copy{padding:34px}.venue-detail-copy h1{margin:0 0 18px;color:#eac13a;font:normal clamp(36px,4vw,58px) Georgia,"Times New Roman",serif}.venue-detail-copy p{color:#ece7ed;line-height:1.6;font-size:16px}.venue-capacity{display:flex;align-items:center;gap:12px;color:#efc934;margin-bottom:16px}.venue-capacity>span{display:grid;place-items:center;width:56px;height:56px;border:1px solid #d3a400;border-radius:50%;font-size:25px;background:#08080a}.venue-capacity small{display:block;font-size:11px;letter-spacing:1px}.venue-capacity strong{display:block;font-size:18px}.venue-use-icons{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.venue-use-icons span{border:1px solid rgba(229,185,39,.48);padding:8px 10px;border-radius:20px;color:#f0d04b;font-size:11px;background:#0a090c}.venue-preview-note{margin:14px 0;border:1px solid #a77e00;border-radius:7px;padding:20px 24px;background:linear-gradient(180deg,#18071b,#09080c)}.venue-preview-note h2,.other-venues h2{margin:0 0 8px;color:#e7bf36;font:normal 25px Georgia,"Times New Roman",serif}.venue-preview-note p{margin:0;color:#ddd7df;line-height:1.55}.other-venues{border:1px solid #a77e00;border-radius:7px;padding:16px 20px;background:#09080c}.other-venues h2{text-align:center}.other-venue-links{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.other-venue-links a{text-align:center;text-decoration:none;color:#efc83e;border:1px solid #987500;padding:12px 8px;border-radius:4px;background:#130a12;font-size:12px;font-weight:bold}.other-venue-links a:hover{background:#330432}

@media(max-width:1250px){
  .main-venue-grid{grid-template-columns:repeat(3,1fr)}
  .additional-grid{grid-template-columns:repeat(3,1fr)}
  .other-venue-links{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:850px){
  .facilities-page,.facility-detail-page{padding-top:10px}
  .facilities-wrap,.facilities-hero{width:calc(100% - 20px)}
  .facilities-hero{grid-template-columns:1fr;padding:20px}
  .facilities-highlights{grid-template-columns:repeat(2,1fr);row-gap:14px}
  .facilities-highlights>div:nth-child(3){border-left:0}
  .main-venue-grid,.additional-grid{grid-template-columns:repeat(2,1fr)}
  .venue-detail-hero{grid-template-columns:1fr}.venue-detail-photo img{min-height:280px;height:280px}.venue-detail-copy{padding:24px}
  .facilities-cta{grid-template-columns:auto 1fr}.facilities-cta .btn{grid-column:1/-1;text-align:center}
}
@media(max-width:540px){
  .facilities-hero{padding:16px}.facilities-hero h1{font-size:35px}.facilities-hero p{font-size:14px}
  .facilities-highlights span{width:52px;height:52px;font-size:22px}.facilities-highlights strong{font-size:10px}
  .facility-section{padding:9px}.facility-section-heading h2{font-size:25px}
  .main-venue-grid,.additional-grid{grid-template-columns:1fr}
  .venue-card img,.facility-card img{height:190px}
  .venue-card p,.facility-card p{min-height:0}
  .other-venue-links{grid-template-columns:repeat(2,1fr)}
}

/* =========================================================
   BUILD 077 - FACILITY DETAIL PAGES + PHOTO GALLERIES
   Clean site font used across all new Facilities detail pages.
   ========================================================= */
.detail-page-v77,.detail-page-v77 *{font-family:"Segoe UI",Tahoma,Arial,sans-serif}
.detail-page-v77{padding-top:10px}
.detail-page-v77 .venue-breadcrumb{display:flex;justify-content:space-between;align-items:center;color:#d8d3db;font-size:12px;margin-bottom:8px}
.detail-page-v77 .venue-breadcrumb>span a{border:0;padding:0;background:none;color:#e8c23b;font-weight:600}
.detail-page-v77 .venue-breadcrumb>a{padding:9px 13px}
.detail-hero-v77{grid-template-columns:.95fr .8fr;min-height:330px}
.detail-main-photo{position:relative;min-height:330px;background:#060608;overflow:hidden}
.detail-page-v77 .venue-detail-photo img{height:330px;min-height:330px;object-fit:cover}
.detail-photo-caption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;padding:9px 11px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.90));color:#eee;font-size:12px}
.detail-photo-caption button{border:1px solid #b89000;border-radius:4px;background:#09090b;color:#efca3f;padding:7px 10px;cursor:pointer;font-weight:600}
.detail-copy-v77{padding:24px 28px}
.detail-copy-v77 h1{font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;font-weight:600!important;color:#f0eee9!important;font-size:clamp(36px,4vw,54px)!important;letter-spacing:-1px;margin-bottom:14px!important;text-shadow:none!important}
.detail-copy-v77 .eyebrow{font-weight:700;letter-spacing:1.4px}
.detail-copy-v77 p{font-size:14px;line-height:1.55;margin:11px 0}
.detail-copy-v77 .venue-capacity{margin-bottom:10px}
.detail-copy-v77 .venue-use-icons{margin:12px 0 15px}
.detail-copy-v77 .venue-use-icons span{padding:6px 9px}
.detail-gallery-panel{margin:12px 0;border:1px solid #a97f00;border-radius:7px;padding:12px 14px 14px;background:linear-gradient(180deg,rgba(29,6,31,.96),rgba(8,8,12,.98));overflow:hidden}
.detail-section-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:10px}
.detail-section-head h2,.detail-features h2,.detail-quick-info h2,.detail-booking-cta h2{margin:0;color:#f0ca43;font-family:"Segoe UI",Tahoma,Arial,sans-serif;font-size:22px;font-weight:600}
.detail-section-head p{margin:2px 0 0;color:#ddd8e0;font-size:12px}
.detail-section-head button{border:1px solid #a98300;border-radius:4px;background:#0a090c;color:#f2cd41;padding:8px 12px;font-weight:600;cursor:pointer}
.detail-gallery-track{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:9px;overflow-x:auto;padding-bottom:4px}
.detail-thumb{padding:0;border:1px solid #b18b00;border-radius:5px;background:#08080b;color:#fff;overflow:hidden;cursor:pointer;min-width:0}
.detail-thumb.active{border-color:#ffe05a;box-shadow:0 0 0 1px #ffe05a inset}
.detail-thumb img{display:block;width:100%;height:110px;object-fit:cover;border-bottom:1px solid #8e7000}
.detail-thumb span{display:block;padding:6px 5px;font-size:10px;color:#eee}
.detail-gallery-help{margin-top:8px;color:#a9a4ad;font-size:10px}.detail-gallery-help strong{color:#d9b93a;font-weight:600}
.detail-info-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:12px;margin-bottom:12px}
.detail-features,.detail-quick-info{border:1px solid #a67f00;border-radius:7px;padding:13px;background:linear-gradient(180deg,#100d12,#08080b)}
.detail-feature-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:10px}
.detail-feature-card{min-height:90px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;border:1px solid rgba(185,143,0,.55);border-radius:5px;background:#0d0c10;padding:9px 5px}
.detail-feature-card span{font-size:27px;color:#efc53b}.detail-feature-card strong{font-size:11px;color:#eee;font-weight:500}
.detail-quick-info p{margin:8px 0;color:#e3dee5;font-size:11px;line-height:1.35}.detail-quick-info p strong{color:#f0ca3e}
.detail-booking-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #a98100;border-radius:7px;padding:14px 18px;background:linear-gradient(90deg,#211006,#0a090c 55%,#1f071f)}
.detail-booking-cta>div{display:flex;align-items:center;gap:14px}.detail-booking-cta>div>strong{font-size:34px;color:#efc73f}.detail-booking-cta h2{font-size:17px}.detail-booking-cta p{margin:3px 0 0;color:#ded9e0;font-size:11px}
.additional-grid .facility-card>a{display:block;margin:0 8px 8px;padding:10px 8px;text-align:center;text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:bold;color:#ffe533;border:1px solid #c49b00;border-radius:4px;background:linear-gradient(180deg,#76006f,#390037)}
.additional-grid .facility-card>a:hover{filter:brightness(1.15)}
.detail-lightbox{position:fixed;inset:0;z-index:5000;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.94);padding:55px 70px}.detail-lightbox.open{display:flex}.detail-lightbox figure{margin:0;text-align:center;max-width:min(1200px,90vw)}.detail-lightbox img{max-width:100%;max-height:80vh;border:1px solid #c49a00;box-shadow:0 0 35px #000}.detail-lightbox figcaption{margin-top:9px;color:#efc940;font-size:12px}.detail-lightbox button{position:absolute;border:1px solid #bd9300;background:#150516;color:#f2ce42;cursor:pointer}.detail-lightbox-close{top:18px;right:22px;width:42px;height:42px;border-radius:50%;font-size:28px}.detail-lightbox-prev,.detail-lightbox-next{top:50%;transform:translateY(-50%);width:44px;height:60px;border-radius:5px;font-size:38px}.detail-lightbox-prev{left:18px}.detail-lightbox-next{right:18px}
@media(max-width:1050px){.detail-hero-v77{grid-template-columns:1fr}.detail-page-v77 .venue-detail-photo img{height:300px;min-height:300px}.detail-main-photo{min-height:300px}.detail-info-grid{grid-template-columns:1fr}.detail-feature-grid{grid-template-columns:repeat(3,1fr)}.detail-gallery-track{grid-template-columns:repeat(6,180px)}}
@media(max-width:600px){.detail-page-v77 .venue-breadcrumb>span{display:none}.detail-page-v77 .venue-breadcrumb{justify-content:flex-end}.detail-copy-v77{padding:20px}.detail-copy-v77 h1{font-size:36px!important}.detail-gallery-track{grid-template-columns:repeat(6,150px)}.detail-feature-grid{grid-template-columns:repeat(2,1fr)}.detail-booking-cta{align-items:stretch;flex-direction:column}.detail-booking-cta .btn{text-align:center}.detail-lightbox{padding:55px 48px}}

/* BUILD 078 - Facilities typography + aligned card actions */
.facilities-page,
.facilities-page *{
  font-family:"Segoe UI",Tahoma,Arial,sans-serif;
}
.facilities-hero h1,
.facility-section-heading h2,
.facilities-cta h2{
  font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;
  font-weight:600!important;
  letter-spacing:0!important;
}
.venue-card,.facility-card{
  display:flex;
  flex-direction:column;
  height:100%;
}
.venue-card p,.facility-card p{
  flex:1 1 auto;
}
.venue-card>a,.additional-grid .facility-card>a{
  margin-top:auto;
  min-height:38px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
}

/* =========================================================
   BUILD 079 - Gallery Admin Photo Allocation
   ========================================================= */
.gallery-admin-login,.gallery-admin-toolbar{font-family:"Segoe UI",Tahoma,Arial,sans-serif;margin:10px auto 12px;border:2px solid #f1cc26;border-radius:7px;background:linear-gradient(180deg,#210824,#0b090d);padding:12px 14px;box-sizing:border-box;box-shadow:0 5px 24px rgba(0,0,0,.72)}
.gallery-admin-login form{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.gallery-admin-login form>div{display:flex;flex-direction:column;gap:2px;flex:1 1 390px}.gallery-admin-login strong,.gallery-admin-toolbar strong{color:#f2ca3d}.gallery-admin-login span,.gallery-admin-toolbar span{color:#ded9e1;font-size:12px}.gallery-admin-login label,.gallery-admin-toolbar label{color:#f0ca3e;font-size:12px;font-weight:600}.gallery-admin-login input,.gallery-admin-toolbar select{margin-left:8px;background:#08080b;color:#fff;border:1px solid #9c7800;border-radius:4px;padding:8px 10px}.gallery-admin-login button,.gallery-admin-toolbar button{border:1px solid #c39a00;border-radius:4px;background:linear-gradient(180deg,#76006f,#3b0039);color:#ffe43d;font-weight:700;padding:8px 13px;cursor:pointer}.gallery-admin-login em{color:#ff9d9d;font-style:normal;font-size:12px}
.gallery-admin-toolbar{position:fixed;top:10px;left:50%;transform:translateX(-50%);width:min(1420px,calc(100% - 24px));z-index:99999;display:grid;grid-template-columns:minmax(300px,1fr) auto auto;gap:14px;align-items:center;box-shadow:0 4px 18px rgba(0,0,0,.5)}.gallery-admin-title{display:flex;flex-direction:column;gap:2px}.gallery-admin-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gallery-admin-actions .secondary{background:#111;color:#eee}.gallery-admin-actions a{color:#f0ca3e;text-decoration:none;font-size:12px;border:1px solid #8f7000;border-radius:4px;padding:8px 10px}.gallery-admin-status{grid-column:1/-1;min-height:16px;color:#e7e1e8;font-size:12px}
.gallery-admin-photo{outline-offset:-3px}.gallery-admin-photo .gallery-admin-photo-check{position:absolute;top:7px;right:7px;z-index:4;width:25px;height:25px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.78);border:2px solid #dcc12d;color:transparent;font-size:15px;font-weight:900;box-shadow:0 2px 8px #000}.gallery-admin-photo.admin-selected{outline:3px solid #ffd91f;box-shadow:0 0 0 2px #7e006f inset}.gallery-admin-photo.admin-selected .gallery-admin-photo-check{background:#7d006f;color:#fff}.gallery-admin-photo.admin-selected img{filter:brightness(.82)}
@media(max-width:950px){.gallery-admin-toolbar{grid-template-columns:1fr}.gallery-admin-status{grid-column:auto}}

/* Build 080: keep admin entry/allocation controls visibly pinned in viewport */
.gallery-admin-login{position:fixed;top:10px;left:50%;transform:translateX(-50%);width:min(1180px,calc(100% - 24px));z-index:99999}
.gallery-admin-login strong{font-size:16px;letter-spacing:.04em}.gallery-admin-toolbar strong{font-size:15px;letter-spacing:.04em}
.gallery-admin-login:before{content:"ADMIN LOGIN REQUIRED";display:inline-block;color:#ffe23c;font-weight:800;margin-right:8px}
.gallery-admin-toolbar:before{content:"ADMIN MODE";position:absolute;right:12px;top:-9px;background:#f1cc26;color:#180018;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:900}

/* =========================================================
   BUILD 082 - STICKY VENUE/FACILITY PHOTO VIEWER
   Keeps the selected large image visible while scrolling
   through longer photo galleries on detail pages.
   ========================================================= */
.detail-gallery-panel-v82{overflow:visible}
.detail-gallery-browser{
  display:grid;
  grid-template-columns:minmax(360px,.95fr) minmax(0,1.45fr);
  gap:14px;
  align-items:start;
}
.detail-gallery-sticky{
  position:sticky;
  top:14px;
  align-self:start;
  z-index:5;
}
.detail-gallery-preview{
  position:relative;
  overflow:hidden;
  border:1px solid #b18b00;
  border-radius:6px;
  background:#050507;
  box-shadow:0 8px 24px rgba(0,0,0,.45);
}
.detail-gallery-preview img{
  display:block;
  width:100%;
  height:clamp(300px,42vw,520px);
  object-fit:contain;
  background:#050507;
}
.detail-gallery-preview-caption{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 10px;
  border-top:1px solid #8e7000;
  background:linear-gradient(180deg,#160816,#08080b);
  color:#eee;
  font-size:11px;
}
.detail-gallery-preview-caption button{
  border:1px solid #b89000;
  border-radius:4px;
  background:#09090b;
  color:#efca3f;
  padding:7px 10px;
  cursor:pointer;
  font-weight:600;
}
.detail-gallery-thumbs{
  display:grid;
  grid-template-columns:repeat(3,minmax(120px,1fr));
  gap:9px;
  align-content:start;
}
.detail-gallery-panel-v82 .detail-thumb img{height:120px}
.detail-gallery-panel-v82 .detail-thumb{min-width:0}
@media(max-width:1050px){
  .detail-gallery-browser{grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr)}
  .detail-gallery-thumbs{grid-template-columns:repeat(2,minmax(120px,1fr))}
  .detail-gallery-preview img{height:360px}
}
@media(max-width:760px){
  .detail-gallery-browser{grid-template-columns:1fr}
  .detail-gallery-sticky{position:relative;top:auto}
  .detail-gallery-preview img{height:300px}
  .detail-gallery-thumbs{grid-template-columns:repeat(2,minmax(120px,1fr))}
}
@media(max-width:480px){
  .detail-gallery-thumbs{grid-template-columns:1fr 1fr}
  .detail-gallery-panel-v82 .detail-thumb img{height:105px}
  .detail-gallery-preview-caption{align-items:stretch;flex-direction:column}
}

/* =========================================================
   BUILD 083 - COMPACT DETAIL HEADER + SINGLE GALLERY VIEWER
   Applied through the shared template to every main venue and
   additional facility detail page.
   ========================================================= */
.detail-page-v83 .venue-breadcrumb{margin-bottom:10px}
.detail-summary-v83{
  display:grid;
  grid-template-columns:minmax(300px,.85fr) minmax(420px,1.35fr) auto;
  gap:28px;
  align-items:center;
  margin-bottom:12px;
  padding:18px 22px;
  border:1px solid #a98100;
  border-radius:7px;
  background:linear-gradient(105deg,#160a10,#0b090c 56%,#21091f);
  box-shadow:0 5px 18px rgba(0,0,0,.22);
}
.detail-summary-v83 .eyebrow{margin-bottom:4px;color:#e7bd34;font-size:10px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase}
.detail-summary-v83 h1{margin:0 0 10px!important;color:#f1efed!important;font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;font-size:clamp(30px,3vw,44px)!important;font-weight:600!important;line-height:1.04!important;letter-spacing:-.5px!important;text-shadow:none!important}
.detail-summary-capacity{margin:0!important}
.detail-summary-capacity>span{width:44px!important;height:44px!important;font-size:20px!important}
.detail-summary-capacity small{font-size:10px!important}
.detail-summary-capacity strong{font-size:17px!important}
.detail-summary-copy p{margin:0 0 12px;color:#e5e0e6;font-size:13px;line-height:1.52}
.detail-summary-copy .venue-use-icons{margin:0}
.detail-summary-action{display:flex;align-items:center;justify-content:flex-end}
.detail-summary-action .btn{white-space:nowrap;text-align:center;min-width:210px}

.detail-gallery-panel-v83{padding:12px 13px 14px;margin-bottom:12px}
.detail-section-head-v83{align-items:center;margin-bottom:10px}
.detail-section-head-v83 h2{font-size:22px!important}
.detail-section-head-v83 p{margin-top:2px!important;font-size:11px!important}
.detail-gallery-count{flex:0 0 auto;color:#d8d3db;font-size:12px;padding-right:3px}
.detail-gallery-count strong{color:#f0ca3e;font-size:15px}
.detail-gallery-browser-v83{
  grid-template-columns:minmax(0,1.55fr) minmax(430px,.95fr);
  gap:12px;
  align-items:start;
}
.detail-gallery-panel-v83 .detail-gallery-sticky{top:12px}
.detail-gallery-preview-v83{height:464px}
.detail-gallery-preview-v83 img{height:420px!important;min-height:0!important;object-fit:contain;background:#050507}
.detail-gallery-preview-v83 .detail-gallery-preview-caption{height:44px;box-sizing:border-box;padding:7px 10px}
.detail-preview-arrow{position:absolute;z-index:3;top:calc(50% - 22px);width:42px;height:52px;border:1px solid #d2ad21;border-radius:50%;background:rgba(5,5,7,.76);color:#fff;font-size:34px;line-height:42px;cursor:pointer;box-shadow:0 2px 9px rgba(0,0,0,.55)}
.detail-preview-arrow:hover{background:#350433;color:#ffe244}
.detail-preview-prev{left:12px}.detail-preview-next{right:12px}
.detail-gallery-thumbs-v83{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.detail-gallery-panel-v83 .detail-thumb img{height:120px!important}
.detail-gallery-panel-v83 .detail-thumb span{height:28px;box-sizing:border-box;padding:6px 4px}
.detail-gallery-panel-v83 .detail-thumb{height:148px}

@media(max-width:1150px){
  .detail-summary-v83{grid-template-columns:minmax(260px,.9fr) minmax(340px,1.1fr);gap:18px}
  .detail-summary-action{grid-column:1/-1;justify-content:flex-end;margin-top:-4px}
  .detail-gallery-browser-v83{grid-template-columns:minmax(0,1.25fr) minmax(360px,.95fr)}
  .detail-gallery-preview-v83{height:440px}.detail-gallery-preview-v83 img{height:396px!important}
  .detail-gallery-panel-v83 .detail-thumb img{height:112px!important}.detail-gallery-panel-v83 .detail-thumb{height:140px}
}
@media(max-width:850px){
  .detail-summary-v83{grid-template-columns:1fr;padding:17px;gap:12px}
  .detail-summary-action{grid-column:auto;justify-content:flex-start;margin-top:0}
  .detail-gallery-browser-v83{grid-template-columns:1fr}
  .detail-gallery-panel-v83 .detail-gallery-sticky{position:relative;top:auto}
  .detail-gallery-preview-v83{height:auto}.detail-gallery-preview-v83 img{height:360px!important}
  .detail-gallery-thumbs-v83{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:600px){
  .detail-summary-v83 h1{font-size:32px!important}
  .detail-summary-action .btn{width:100%;min-width:0}
  .detail-gallery-preview-v83 img{height:290px!important}
  .detail-gallery-thumbs-v83{grid-template-columns:repeat(2,minmax(0,1fr))}
  .detail-gallery-panel-v83 .detail-thumb img{height:105px!important}.detail-gallery-panel-v83 .detail-thumb{height:133px}
  .detail-preview-arrow{width:36px;height:44px;font-size:30px}.detail-preview-prev{left:7px}.detail-preview-next{right:7px}
}


/* =========================================================
   BUILD 084 - THREE THUMBNAIL ROWS + LOAD MORE
   Keeps the initial gallery balanced with the main preview.
   Additional thumbnails are revealed nine at a time.
   ========================================================= */
.detail-gallery-thumbs-wrap{min-width:0}
.detail-thumb-hidden{display:none!important}
.detail-load-more{
  display:block;
  width:min(300px,100%);
  margin:10px auto 0;
  min-height:38px;
  padding:8px 16px;
  border:1px solid #b89000;
  border-radius:5px;
  background:linear-gradient(180deg,#31052e,#160816);
  color:#f3cf3f;
  font-family:"Segoe UI",Tahoma,Arial,sans-serif;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  cursor:pointer;
}
.detail-load-more:hover{background:#4a0645;color:#ffe75a}
@media(max-width:850px){
  .detail-load-more{width:100%;max-width:360px}
}

/* =========================================================
   BUILD 086 - TYPES OF FUNCTIONS
   ========================================================= */
.functions-types-page,.functions-types-page *{font-family:"Segoe UI",Tahoma,Arial,sans-serif}
.functions-types-page{padding:14px 0 28px}
.functions-types-page .section-wrap{width:min(1380px,calc(100% - 32px));margin-left:auto;margin-right:auto}
.functions-types-hero{display:grid;grid-template-columns:1.05fr .95fr;min-height:315px;border:1px solid #a98200;border-radius:8px;overflow:hidden;background:linear-gradient(135deg,#170819,#08080b);box-shadow:0 14px 34px rgba(0,0,0,.22)}
.functions-types-hero-copy{padding:38px 42px;display:flex;flex-direction:column;justify-content:center}
.functions-types-eyebrow,.functions-types-small-label{display:block;color:#efc83d;font-size:12px;font-weight:800;letter-spacing:1.35px;text-transform:uppercase}
.functions-types-hero h1{margin:7px 0 13px;color:#f5f2ed;font-size:clamp(38px,4.2vw,58px);font-weight:600;letter-spacing:-1px;line-height:1.02}
.functions-types-hero p{max-width:720px;margin:0;color:#e6e0e7;font-size:15px;line-height:1.65}
.functions-types-hero-actions{display:flex;align-items:center;gap:18px;margin-top:24px;flex-wrap:wrap}
.functions-types-hero-actions .btn,.functions-types-cta-actions .btn{padding:13px 22px;text-transform:uppercase;font-size:12px;font-weight:800}
.functions-types-secondary,.functions-types-whatsapp{color:#efc83d;text-decoration:none;font-weight:700;font-size:13px}
.functions-types-secondary:hover,.functions-types-whatsapp:hover{text-decoration:underline}
.functions-types-hero-photo{min-height:315px;background:linear-gradient(90deg,rgba(8,8,11,.2),rgba(8,8,11,0)),url('../assets/images/hero-slide-02.webp') center/cover no-repeat;position:relative}
.functions-types-hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,8,25,.75) 0%,rgba(23,8,25,.12) 38%,rgba(0,0,0,.1) 100%)}
.functions-types-intro{display:grid;grid-template-columns:.78fr 1.22fr;gap:34px;align-items:end;margin-top:16px;padding:22px 28px;border:1px solid #8e6d00;border-radius:8px;background:#0b090e}
.functions-types-intro h2,.functions-types-feature h2,.functions-types-cta h2{margin:5px 0 0;color:#edc53a;font-size:27px;font-weight:650}
.functions-types-intro p,.functions-types-feature p,.functions-types-cta p{margin:0;color:#dcd6df;line-height:1.6;font-size:14px}
.functions-types-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:14px}
.function-type-card{display:grid;grid-template-columns:48px 1fr;gap:13px;min-height:122px;padding:18px 16px;border:1px solid #8b6b00;border-radius:7px;background:linear-gradient(145deg,#180719,#0a090c);transition:transform .18s ease,border-color .18s ease,background .18s ease}
.function-type-card:hover{transform:translateY(-2px);border-color:#d2a900;background:linear-gradient(145deg,#220922,#0d0a0f)}
.function-type-icon{width:46px;height:46px;border:1px solid #b68c00;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#f0ca3f;background:#09090c;font-size:20px;font-weight:800}
.function-type-card h3{margin:2px 0 7px;color:#efc83d;font-size:16px;font-weight:750;line-height:1.2}
.function-type-card p{margin:0;color:#ddd7df;font-size:12.5px;line-height:1.5}
.functions-types-feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;align-items:center;margin-top:14px;padding:24px 28px;border:1px solid #8e6d00;border-radius:8px;background:linear-gradient(90deg,#110812,#09090c)}
.functions-types-feature-copy p{margin-top:9px;max-width:700px}
.functions-types-feature-points{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid #6f5900}
.functions-types-feature-points div{text-align:center;padding:10px 8px;border-right:1px solid #6f5900}
.functions-types-feature-points div:last-child{border-right:0}
.functions-types-feature-points strong{display:block;color:#efc83d;font-size:30px;line-height:1;font-weight:750}
.functions-types-feature-points span{display:block;margin-top:6px;color:#eee;font-size:11px;line-height:1.25;text-transform:uppercase;letter-spacing:.4px}
.functions-types-cta{display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center;margin-top:14px;padding:26px 30px;border:1px solid #b08900;border-radius:8px;background:linear-gradient(135deg,#220721,#0b090d)}
.functions-types-cta p{margin-top:8px;max-width:820px}
.functions-types-cta-actions{display:flex;flex-direction:column;gap:10px;align-items:stretch;text-align:center;min-width:230px}
@media(max-width:1100px){.functions-types-grid{grid-template-columns:repeat(3,1fr)}.functions-types-feature{grid-template-columns:1fr}.functions-types-feature-points{border-left:0;border-top:1px solid #6f5900;padding-top:12px}}
@media(max-width:820px){.functions-types-hero{grid-template-columns:1fr}.functions-types-hero-photo{min-height:220px;order:-1}.functions-types-hero-copy{padding:28px}.functions-types-intro{grid-template-columns:1fr;gap:10px}.functions-types-grid{grid-template-columns:repeat(2,1fr)}.functions-types-cta{grid-template-columns:1fr}.functions-types-cta-actions{align-items:flex-start;min-width:0}}
@media(max-width:540px){.functions-types-page .section-wrap{width:calc(100% - 20px)}.functions-types-grid{grid-template-columns:1fr}.functions-types-feature-points{grid-template-columns:repeat(2,1fr)}.functions-types-feature-points div:nth-child(2){border-right:0}.functions-types-feature-points div:nth-child(-n+2){border-bottom:1px solid #6f5900}.functions-types-hero-copy,.functions-types-intro,.functions-types-feature,.functions-types-cta{padding:20px}.function-type-card{min-height:0}.functions-types-hero h1{font-size:38px}}

/* BUILD 087 - REGISTER FOR EVENT */
.event-register-page,.event-register-page *{font-family:"Segoe UI",Tahoma,Arial,sans-serif}.event-register-page{padding:14px 0 30px}.event-register-page .section-wrap{width:min(1380px,calc(100% - 32px));margin-left:auto;margin-right:auto}.event-register-hero{display:grid;grid-template-columns:1.35fr .65fr;border:1px solid #a98200;border-radius:8px;overflow:hidden;background:linear-gradient(135deg,#170819,#09080c 62%,#2a0926)}.event-register-hero-copy{padding:34px 40px}.event-register-eyebrow,.event-register-small-label{display:block;color:#efc83d;font-size:12px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase}.event-register-hero h1{margin:7px 0 12px;color:#f5f2ed;font-size:clamp(38px,4.3vw,58px);font-weight:600;line-height:1.02}.event-register-hero p{margin:0;color:#e6e0e7;font-size:15px;line-height:1.65}.event-register-hero-notes{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.event-register-hero-notes span{padding:8px 11px;border:1px solid #755b00;border-radius:20px;background:#0a090c;color:#efc83d;font-size:11px;font-weight:700}.event-register-hero-side{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:28px;border-left:1px solid #745900;background:radial-gradient(circle at center,#31062d,#0b090d 68%)}.event-register-icon{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border:2px solid #cda413;border-radius:50%;color:#f3d04a;font-size:36px;background:#08080a}.event-register-hero-side strong{margin-top:14px;color:#efc83d;font-size:21px}.event-register-hero-side p{margin-top:8px;font-size:13px}.event-register-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;align-items:end;margin-top:14px;padding:20px 26px;border:1px solid #8e6d00;border-radius:8px;background:#0b090e}.event-register-intro h2{margin:5px 0 0;color:#edc53a;font-size:27px}.event-register-intro p{margin:0;color:#dcd6df;font-size:13px;line-height:1.6}.event-register-form{margin-top:14px}.event-register-panel{margin-bottom:12px;padding:22px 24px;border:1px solid #8d6b00;border-radius:8px;background:linear-gradient(145deg,#160817,#09090c)}.event-register-panel-head{display:flex;align-items:center;gap:13px;margin-bottom:18px;padding-bottom:13px;border-bottom:1px solid #5e4900}.event-register-step{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid #b68c00;border-radius:50%;background:#09090c;color:#efc83d;font-size:18px;font-weight:800}.event-register-panel-head h2{margin:0;color:#efc83d;font-size:22px}.event-register-panel-head p{margin:3px 0 0;color:#bdb6c1;font-size:12px}.event-register-grid{display:grid;gap:15px 18px}.event-register-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.event-register-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.event-register-field{display:flex;flex-direction:column;gap:7px}.event-register-field.full{grid-column:1/-1}.event-register-field>span{color:#eee;font-size:12px;font-weight:650}.event-register-field b,.event-register-consent b{color:#f0c638}.event-register-field input,.event-register-field select,.event-register-field textarea{width:100%;box-sizing:border-box;border:1px solid #756000;border-radius:5px;background:#09090c;color:#f2eef3;padding:11px 12px;font-size:13px}.event-register-field input,.event-register-field select{height:42px}.event-register-field textarea{resize:vertical;min-height:110px}.event-register-submit-panel{padding:22px 26px;border:1px solid #a98200;border-radius:8px;background:linear-gradient(135deg,#220721,#0b090d);text-align:center}.event-register-consent{display:flex;gap:12px;align-items:flex-start;max-width:980px;margin:0 auto 18px;text-align:left;color:#ded8df;font-size:12px;line-height:1.55}.event-register-submit{min-width:250px;padding:14px 24px;font-size:12px;font-weight:800;text-transform:uppercase}.event-register-privacy{margin:12px auto 0!important;max-width:900px;color:#a9a2ad!important;font-size:10.5px!important}.event-register-error{margin-top:14px;padding:13px 16px;border:1px solid #d29f00;border-radius:7px;background:#35100d;color:#ffd66c}.event-register-success{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;margin-top:14px;padding:30px;border:1px solid #b58c00;border-radius:8px;background:linear-gradient(135deg,#190819,#0b090d)}.event-register-success-icon{display:flex;align-items:center;justify-content:center;width:74px;height:74px;border:2px solid #c7a10d;border-radius:50%;color:#f0ca3f;font-size:38px}.event-register-success h2{margin:6px 0 8px;color:#efc83d;font-size:28px}.event-register-success p{margin:0;color:#ddd7df}.event-register-success-actions{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px}.event-register-secondary{color:#efc83d;text-decoration:none;font-weight:700}@media(max-width:900px){.event-register-hero{grid-template-columns:1fr}.event-register-hero-side{border-left:0;border-top:1px solid #745900}.event-register-intro{grid-template-columns:1fr}.event-register-grid.three{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.event-register-page .section-wrap{width:calc(100% - 20px)}.event-register-hero-copy,.event-register-panel,.event-register-submit-panel{padding:20px}.event-register-grid.two,.event-register-grid.three{grid-template-columns:1fr}.event-register-field.full{grid-column:auto}.event-register-success{grid-template-columns:1fr}}

/* =========================================================
   BUILD 088 - FUTURE SITE DEVELOPMENTS
   ========================================================= */
.future-dev-page,.future-dev-page *{font-family:"Segoe UI",Tahoma,Arial,sans-serif}
.future-dev-page{padding:18px 0 34px}
.future-dev-page .section-wrap{width:min(1380px,calc(100% - 32px));margin-left:auto;margin-right:auto}
.future-dev-heading{text-align:center;padding:30px 34px 24px;border:1px solid #9a7800;border-radius:8px;background:radial-gradient(circle at 50% -30%,rgba(96,10,89,.45),transparent 55%),linear-gradient(180deg,#170817,#09090c);box-shadow:0 14px 32px rgba(0,0,0,.24)}
.future-dev-eyebrow,.future-dev-small-label{display:block;color:#efc83d;font-size:11px;font-weight:800;letter-spacing:1.45px;text-transform:uppercase}
.future-dev-title-rule{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;margin:7px auto 12px;max-width:980px}
.future-dev-title-rule span{height:1px;background:linear-gradient(90deg,transparent,#a98200)}
.future-dev-title-rule span:last-child{background:linear-gradient(90deg,#a98200,transparent)}
.future-dev-title-rule h1{margin:0;color:#f2cc42;font-size:clamp(34px,4vw,52px);font-weight:600;line-height:1.08}
.future-dev-heading>p{max-width:1020px;margin:8px auto 0;color:#ded8e0;font-size:14px;line-height:1.7}
.future-dev-heading .future-dev-lead{font-size:16px;color:#f0ebf1}
.future-dev-heading p strong{color:#f1cb3f}
.future-dev-stats{display:grid;grid-template-columns:repeat(3,1fr);max-width:850px;margin:23px auto 0;border:1px solid #6f5700;border-radius:7px;overflow:hidden;background:#08080b}
.future-dev-stats div{padding:14px 10px;border-right:1px solid #6f5700}
.future-dev-stats div:last-child{border-right:0}
.future-dev-stats strong{display:block;color:#f0c93d;font-size:23px;font-weight:750;line-height:1.1}
.future-dev-stats span{display:block;margin-top:5px;color:#d5cfd7;font-size:10px;text-transform:uppercase;letter-spacing:.55px}
.future-dev-gallery{margin-top:15px;padding:20px 20px 22px;border:1px solid #846700;border-radius:8px;background:linear-gradient(145deg,#120812,#08080b)}
.future-dev-gallery-head{display:grid;grid-template-columns:1fr minmax(260px,520px);gap:24px;align-items:end;padding:2px 4px 16px;border-bottom:1px solid #5f4b00}
.future-dev-gallery-head h2{margin:4px 0 0;color:#edc53a;font-size:27px;font-weight:650}
.future-dev-gallery-head p{margin:0;color:#cfc8d1;font-size:12px;line-height:1.55;text-align:right}
.future-dev-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:15px}
.future-dev-card{position:relative;display:block;width:100%;aspect-ratio:16/10;padding:0;overflow:hidden;border:1px solid #7e6200;border-radius:7px;background:#050507;cursor:pointer;box-shadow:0 5px 14px rgba(0,0,0,.28)}
.future-dev-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .28s ease,filter .28s ease}
.future-dev-card:hover{border-color:#d2aa1a}
.future-dev-card:hover img{transform:scale(1.025);filter:brightness(.86)}
.future-dev-zoom{position:absolute;left:50%;bottom:13px;transform:translate(-50%,8px);opacity:0;padding:7px 13px;border:1px solid #d0aa1a;border-radius:20px;background:rgba(9,7,10,.86);color:#f4cf43;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;transition:.22s ease;white-space:nowrap}
.future-dev-card:hover .future-dev-zoom{opacity:1;transform:translate(-50%,0)}
.future-dev-lightbox{position:fixed;z-index:9999;inset:0;display:none;align-items:center;justify-content:center;padding:30px 78px;background:rgba(0,0,0,.94)}
.future-dev-lightbox.open{display:flex}
.future-dev-lightbox figure{margin:0;max-width:min(1400px,92vw);max-height:92vh;text-align:center}
.future-dev-lightbox figure img{display:block;max-width:100%;max-height:84vh;margin:auto;object-fit:contain;border:1px solid #b58d00;border-radius:6px;background:#050507;box-shadow:0 16px 50px #000}
.future-dev-lightbox figcaption{margin-top:9px;color:#e7c53f;font-size:12px}
.future-dev-close,.future-dev-arrow{position:fixed;border:1px solid #b9910b;background:rgba(18,8,18,.92);color:#f0cb3f;cursor:pointer}
.future-dev-close{top:18px;right:22px;width:44px;height:44px;border-radius:50%;font-size:30px;line-height:36px}
.future-dev-arrow{top:50%;transform:translateY(-50%);width:48px;height:60px;border-radius:50%;font-size:38px;line-height:48px}
.future-dev-prev{left:20px}.future-dev-next{right:20px}
.future-dev-close:hover,.future-dev-arrow:hover{background:#43063e;color:#ffe65a}
body.future-dev-modal-open{overflow:hidden}
@media(max-width:900px){.future-dev-grid{grid-template-columns:repeat(2,1fr)}.future-dev-gallery-head{grid-template-columns:1fr}.future-dev-gallery-head p{text-align:left}.future-dev-lightbox{padding:25px 58px}}
@media(max-width:620px){.future-dev-page .section-wrap{width:calc(100% - 20px)}.future-dev-heading{padding:24px 18px 20px}.future-dev-title-rule{grid-template-columns:1fr}.future-dev-title-rule>span{display:none}.future-dev-stats{grid-template-columns:1fr}.future-dev-stats div{border-right:0;border-bottom:1px solid #6f5700}.future-dev-stats div:last-child{border-bottom:0}.future-dev-gallery{padding:14px 10px 16px}.future-dev-grid{grid-template-columns:1fr;gap:10px}.future-dev-lightbox{padding:20px 10px}.future-dev-arrow{width:38px;height:48px;font-size:30px}.future-dev-prev{left:6px}.future-dev-next{right:6px}.future-dev-close{right:9px;top:9px}}

/* =========================================================
   BUILD 089 - SPECIAL PACKAGE DEALS
   Combined Packages + Current Specials into one page.
   Large open centre area intentionally reserved for content.
   ========================================================= */
.package-deals-page,.package-deals-page *{font-family:"Segoe UI",Tahoma,Arial,sans-serif}
.package-deals-page{padding:18px 0 34px}
.package-deals-page .section-wrap{width:min(1380px,calc(100% - 32px));margin-left:auto;margin-right:auto}
.package-deals-heading{text-align:center;padding:30px 34px 25px;border:1px solid #9a7800;border-radius:8px;background:radial-gradient(circle at 50% -30%,rgba(96,10,89,.45),transparent 55%),linear-gradient(180deg,#170817,#09090c);box-shadow:0 14px 32px rgba(0,0,0,.24)}
.package-deals-eyebrow{display:block;color:#efc83d;font-size:11px;font-weight:800;letter-spacing:1.45px;text-transform:uppercase}
.package-deals-title-rule{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;margin:7px auto 12px;max-width:980px}
.package-deals-title-rule span{height:1px;background:linear-gradient(90deg,transparent,#a98200)}
.package-deals-title-rule span:last-child{background:linear-gradient(90deg,#a98200,transparent)}
.package-deals-title-rule h1{margin:0;color:#f2cc42;font-size:clamp(34px,4vw,52px);font-weight:600;line-height:1.08}
.package-deals-heading p{max-width:970px;margin:8px auto 0;color:#e2dce4;font-size:15px;line-height:1.7}
.package-deals-open{min-height:560px;margin-top:15px;border:1px solid #846700;border-radius:8px;background:linear-gradient(145deg,#120812,#08080b);box-shadow:0 10px 26px rgba(0,0,0,.2)}
@media(max-width:620px){.package-deals-page .section-wrap{width:calc(100% - 20px)}.package-deals-heading{padding:24px 18px 20px}.package-deals-title-rule{grid-template-columns:1fr}.package-deals-title-rule>span{display:none}.package-deals-open{min-height:420px}}
