.acd12-page-hero{
    padding:28px 14px 10px;
    background:
        radial-gradient(circle at 12% 12%,rgba(223,192,120,.22),transparent 28%),
        linear-gradient(180deg,#fff8ea,#fff);
    font-family:Arial,Tahoma,sans-serif;
}

.acd12-page-hero-inner{
    width:min(1180px,100%);
    margin:0 auto;
    border-radius:34px;
    border:1px solid rgba(185,138,54,.24);
    background:
        radial-gradient(circle at 15% 20%,rgba(255,255,255,.44),transparent 28%),
        linear-gradient(135deg,#fff,#fff8ea);
    box-shadow:0 24px 80px rgba(75,51,34,.12);
    padding:24px;
    text-align:center;
    overflow:hidden;
    position:relative;
}

.acd12-page-hero-inner::before{
    content:"";
    position:absolute;
    width:260px;
    height:260px;
    border-radius:50%;
    top:-110px;
    inset-inline-end:-100px;
    background:radial-gradient(circle,rgba(223,192,120,.30),transparent 66%);
    pointer-events:none;
}

.acd12-page-hero span{
    display:inline-flex;
    border-radius:999px;
    padding:7px 13px;
    background:#fff1ce;
    color:#8d611f;
    font-weight:900;
    margin-bottom:10px;
}

.acd12-page-hero h1{
    margin:0;
    color:#2f2118;
    font-size:clamp(30px,5vw,58px);
    line-height:1.12;
    font-weight:900;
    letter-spacing:-.035em;
}

.acd12-page-hero p{
    max-width:860px;
    margin:12px auto 0;
    color:#756556;
    line-height:1.9;
    font-weight:700;
}

.acd12-quick-links{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:9px;
    margin-top:16px;
}

.acd12-quick-links a{
    min-height:42px;
    border-radius:999px;
    padding:9px 14px;
    background:linear-gradient(135deg,#fff,#fff8ea);
    border:1px solid rgba(185,138,54,.22);
    color:#2f2118!important;
    text-decoration:none!important;
    font-weight:900;
    display:inline-flex;
    align-items:center;
    gap:7px;
    box-shadow:0 10px 26px rgba(75,51,34,.07);
}

.acd12-quick-links a.gold{
    background:linear-gradient(135deg,#b98a36,#dfc078);
    color:#fff!important;
    border-color:transparent;
    box-shadow:0 14px 35px rgba(185,138,54,.26);
}

/* General content card polish for target pages */
body:has(.acd12-page-hero) main img,
body:has(.acd12-page-hero) .card img,
body:has(.acd12-page-hero) article img{
    border-radius:18px;
}

body:has(.acd12-page-hero) .card,
body:has(.acd12-page-hero) article,
body:has(.acd12-page-hero) .package-card,
body:has(.acd12-page-hero) .service-card{
    border-radius:26px!important;
    border:1px solid rgba(185,138,54,.20)!important;
    box-shadow:0 16px 45px rgba(75,51,34,.08)!important;
}

/* JS enhanced cards */
.acd12-enhanced-card{
    position:relative!important;
    overflow:hidden!important;
    border-radius:26px!important;
    border:1px solid rgba(185,138,54,.20)!important;
    box-shadow:0 16px 45px rgba(75,51,34,.08)!important;
    background:linear-gradient(180deg,#fff,#fffdf8)!important;
    transition:transform .18s ease, box-shadow .18s ease!important;
}

.acd12-enhanced-card:hover{
    transform:translateY(-4px)!important;
    box-shadow:0 28px 80px rgba(75,51,34,.14)!important;
}

.acd12-enhanced-card::after{
    content:"";
    position:absolute;
    width:10px;
    height:10px;
    top:14px;
    inset-inline-end:14px;
    border-radius:50%;
    background:rgba(223,192,120,.68);
    box-shadow:0 0 24px rgba(223,192,120,.76);
    pointer-events:none;
    z-index:3;
}

/* Gallery overlay */
.acd12-gallery-overlay{
    position:absolute;
    inset:auto 10px 10px 10px;
    z-index:5;
    display:flex;
    gap:7px;
    flex-wrap:wrap;
    justify-content:center;
    padding:10px;
    border-radius:20px;
    background:linear-gradient(135deg,rgba(47,33,24,.82),rgba(88,60,38,.72));
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    opacity:0;
    transform:translateY(10px);
    transition:.18s ease;
}

.acd12-enhanced-card:hover .acd12-gallery-overlay,
.acd12-enhanced-card.acd12-touched .acd12-gallery-overlay{
    opacity:1;
    transform:translateY(0);
}

.acd12-gallery-overlay a,
.acd12-card-cta a{
    min-height:36px;
    border-radius:999px;
    padding:7px 11px;
    background:#fff;
    border:1px solid rgba(255,255,255,.24);
    color:#2f2118!important;
    text-decoration:none!important;
    font-size:12px;
    font-weight:900;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:5px;
}

.acd12-gallery-overlay a.gold,
.acd12-card-cta a.gold{
    color:#fff!important;
    background:linear-gradient(135deg,#b98a36,#dfc078);
    border-color:transparent;
}

.acd12-card-cta{
    display:flex;
    gap:7px;
    flex-wrap:wrap;
    margin-top:12px;
}

/* Mobile snap for galleries/cards */
@media(max-width:760px){
    .acd12-page-hero{
        padding:18px 10px 8px;
    }

    .acd12-page-hero-inner{
        border-radius:26px;
        padding:18px;
    }

    .acd12-quick-links{
        flex-wrap:nowrap;
        overflow:auto;
        justify-content:flex-start;
        padding-bottom:4px;
    }

    .acd12-quick-links a{
        flex:0 0 auto;
    }

    .acd12-gallery-overlay{
        position:static;
        opacity:1;
        transform:none;
        margin:10px;
        background:linear-gradient(135deg,#fff8ea,#fff);
    }

    .acd12-gallery-overlay a{
        border:1px solid rgba(185,138,54,.22);
    }
}

@media(prefers-reduced-motion:reduce){
    .acd12-enhanced-card,
    .acd12-gallery-overlay{
        transition:none!important;
    }
}
