/* hgn-v10.css — structured content components (cards, steps, services, FAQ, CTA) */
.v10-kicker{display:block;text-transform:uppercase;letter-spacing:2px;font-size:.72rem;color:#fca311;opacity:.85;margin-bottom:6px;font-weight:600}
.v10-hero-ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:22px}
.v10-btn{display:inline-block;padding:13px 26px;border-radius:10px;font-weight:600;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease;font-size:.95rem}
.v10-btn:hover{transform:translateY(-2px)}
.v10-btn-gold{background:linear-gradient(117deg, #7c1f1f, #2b2823);color:#fff;box-shadow:0 6px 18px rgba(220,38,38,.35)}
.v10-btn-ghost{border:2px solid rgba(252,163,17,.55);color:#fca311;background:transparent}
.v10-btn-ghost:hover{border-color:#fca311;background:rgba(252,163,17,.08)}
.v10-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:22px 0 6px}
.v10-card{background:linear-gradient(160deg,rgba(220,38,38,.10),rgba(26,11,11,.55));border:1px solid rgba(252,163,17,.25);border-radius:14px;padding:22px 20px;text-align:left;transition:transform .3s ease,border-color .3s ease}
.v10-card:hover{transform:translateY(-4px);border-color:#fca311}
.v10-card h3{color:#fca311;font-size:1.05rem;margin-bottom:10px}
.v10-card p{font-size:.92rem;line-height:1.7;margin:0}
.v10-svc-list{display:flex;flex-direction:column;gap:12px;margin:20px 0 6px}
.v10-svc-row{display:flex;gap:14px;align-items:flex-start;background:rgba(26,11,11,.45);border:1px solid rgba(220,38,38,.18);border-radius:12px;padding:16px 18px}
.v10-svc-num{flex:0 0 34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#dc2626,#fca311);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:.9rem}
.v10-svc-row h3{color:#fafafa;font-size:1rem;margin-bottom:4px;text-align:left}
.v10-svc-row p{margin:0;font-size:.92rem;line-height:1.65;opacity:.88;text-align:left}
.v10-steps{display:flex;flex-direction:column;gap:14px;margin:20px 0 10px}
.v10-step{display:flex;gap:14px;align-items:flex-start}
.v10-step-num{flex:0 0 38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#dc2626,#fca311);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center}
.v10-step h3{color:#fca311;font-size:.98rem;margin-bottom:4px;text-align:left}
.v10-step p{margin:0;font-size:.93rem;line-height:1.65;opacity:.9;text-align:left}
.v10-note{background:rgba(252,163,17,.07);border-left:3px solid #fca311;border-radius:0 10px 10px 0;padding:12px 16px;font-size:.92rem;line-height:1.65;margin-top:14px;text-align:left}
.v10-faq-item{background:rgba(26,11,11,.5);border:1px solid rgba(220,38,38,.2);border-radius:12px;margin-bottom:10px;overflow:hidden}
.v10-faq-item summary{cursor:pointer;padding:14px 18px;font-weight:600;color:#fafafa;list-style:none;position:relative}
.v10-faq-item summary::-webkit-details-marker{display:none}
.v10-faq-item summary:after{content:'+';position:absolute;right:18px;top:50%;transform:translateY(-50%);color:#fca311;font-size:1.2rem;font-weight:700}
.v10-faq-item[open] summary:after{content:'–'}
.v10-faq-item[open] summary{color:#fca311}
.v10-faq-body{padding:0 18px 16px}
.v10-faq-body p{margin:0;font-size:.93rem;line-height:1.7;opacity:.9;text-align:left}
.v10-cta{background:linear-gradient(135deg,rgba(220,38,38,.22),rgba(252,163,17,.10));border:1px solid rgba(252,163,17,.35);border-radius:18px;text-align:center;padding:36px 24px;margin-top:34px}
.v10-cta h2{color:#fca311;font-size:1.5rem;margin-bottom:10px}
.v10-cta p{max-width:640px;margin:0 auto 18px;opacity:.9;line-height:1.7}
@media (max-width:768px){.v10-hero-ctas{flex-direction:column;align-items:stretch}.v10-card,.v10-svc-row{padding:16px 14px}.v10-cta{padding:26px 16px}}

/* ---- v11 homepage additions ---- */
.callgirls-section{background:linear-gradient(180deg,rgba(255,190,120,.05),transparent 65%);border-top:1px solid rgba(255,214,150,.08);border-bottom:1px solid rgba(255,214,150,.08)}
.callgirls-section .section-copy-inner{max-width:860px;margin:0 auto}
.section-copy-inner h2{margin:.35rem 0 1.1rem}
.section-copy-inner p{line-height:1.75}
.v10-rates-wrap{max-width:780px;margin:2.4rem auto 0}
.v10-rates-wrap h3,.v10-checklist-wrap h3{color:#F5C97B;font-size:1.15rem;margin:0 0 .9rem;letter-spacing:.02em}
.v10-checklist-wrap{max-width:780px;margin:2rem auto 0}
.v10-rates-table{width:100%;border-collapse:collapse;background:rgba(255,255,255,.03);border:1px solid rgba(255,214,150,.18);border-radius:12px;overflow:hidden;font-size:.95rem}
.v10-rates-table th{background:rgba(255,214,150,.12);color:#F5C97B;font-weight:600;text-align:left;padding:.8rem 1rem;letter-spacing:.02em}
.v10-rates-table td{padding:.75rem 1rem;border-top:1px solid rgba(255,255,255,.06);color:rgba(255,255,255,.85)}
.v10-rates-table tr:first-child td{border-top:none}
.v10-checklist{max-width:780px;margin:0 auto;padding-left:1.25rem;color:rgba(255,255,255,.85)}
.v10-checklist li{margin:.45rem 0;line-height:1.6}
.v10-note{margin-top:1rem;font-size:.9rem;color:rgba(255,255,255,.65)}
.v10-note a{color:#F5C97B}

/* ---- v11.2 light-theme contrast fixes ----
   Effective site theme is LIGHT (body !important: --v8-paper #fffaf6 / --v8-ink #241b21).
   v10 components had dark backgrounds + inherited dark ink = unreadable.
   Fixed: light surfaces + dark text. Area hero (genuinely dark) untouched. */
.v10-card{background:#fff!important;border:1px solid #e5d7de!important;box-shadow:0 8px 22px rgba(90,30,60,.06)}
.v10-card h3{color:#5a1e3c!important}
.v10-card p{color:#40343b!important}
.v10-svc-row{background:#fff!important;border:1px solid #e5d7de!important}
.v10-svc-row h3{color:#241b21!important}
.v10-svc-row p{color:#40343b!important;opacity:1!important}
.v10-step h3{color:#5a1e3c!important}
.v10-step p{color:#40343b!important;opacity:1!important}
.v10-kicker{color:#8a4a10!important}
.v10-faq-item{background:#fff!important;border:1px solid #e5d7de!important}
.v10-faq-item summary{color:#241b21!important}
.v10-faq-item[open] summary{color:#5a1e3c!important}
.v10-faq-item summary:after{color:#8a4a10!important}
.v10-faq-body p{color:#40343b!important;opacity:1!important}
.v10-cta{background:linear-gradient(135deg,rgba(220,38,38,.08),rgba(252,163,17,.12))!important;border:1px solid rgba(220,38,38,.25)!important}
.v10-cta h2{color:#5a1e3c!important}
.v10-cta p{color:#40343b!important;opacity:1!important}
.v10-note{background:#fff7e9!important;border-left:3px solid #d99a26!important;color:#493b44!important}
.v10-note a{color:#702246!important}
.v10-checklist{color:#40343b!important}
.v10-checklist li{color:#40343b!important}
.v10-rates-wrap h3,.v10-checklist-wrap h3{color:#5a1e3c!important}
.v10-rates-table{background:#fff!important;border:1px solid #e5d7de!important}
.v10-rates-table th{background:#f7ecdd!important;color:#6a3b0e!important}
.v10-rates-table td{color:#40343b!important;border-top:1px solid #eee0d5!important}
.callgirls-section{border-top:1px solid rgba(90,30,60,.10);border-bottom:1px solid rgba(90,30,60,.10);background:linear-gradient(180deg,rgba(255,214,150,.12),transparent 65%)}

/* ---- v11.3: restore designed light-text on dark callout boxes ----
   .safety-card & .prose-block are dark-box components by design (dark bg + light text
   in base CSS). Global light-theme !important rules forced dark ink onto them. */
.safety-card p{color:rgba(250,250,250,.82)!important}
.prose-block h2,.prose-block h3{color:#fca311!important}
.prose-block p,.prose-block li{color:rgba(250,250,250,.92)!important}
.prose-block a{color:#fca311!important}


/* ============== ABOUT SECTION TEXT VISIBILITY ============== */
.about-section .about-text p {color:#40343b!important}
.about-section .about-text h2 {color:#5a1e3c!important}
.about-section .about-text .about-lead {color:#40343b!important}
.about-section .about-text .section-eyebrow {color:#8a4a10!important}
.about-section .about-features li {color:#40343b!important}
.about-section .about-stat-num {color:#5a1e3c!important}
.about-section .about-stat-label {color:#6a5560!important}
.about-section .about-cta-link {color:#5a1e3c!important}
.about-section .about-image-badge {color:#fff!important;background:#5a1e3c!important}


/* ============== ALL SECTIONS TEXT VISIBILITY ============== */
.safety-section p, .safety-section h2, .safety-section h3 {color:#241b21!important}
.safety-section .safety-card p {color:rgba(250,250,250,.82)!important}
.trust-section p, .trust-section h2 {color:#241b21!important}
.trust-section .trust-card h3 {color:#241b21!important}
.trust-section .trust-card p {color:#40343b!important}
.testimonials-section p, .testimonials-section h2 {color:#241b21!important}
.testimonials-section .testimonial-card p {color:#40343b!important}
.testimonials-section .testimonial-card .reviewer {color:#5a1e3c!important}
.booking-guide-section p, .booking-guide-section h2 {color:#241b21!important}
.faq-section p, .faq-section h2 {color:#241b21!important}
.faq-section .faq-item summary {color:#241b21!important}
.faq-section .faq-item p {color:#40343b!important}
.book-section p, .book-section h2 {color:#241b21!important}
.seo-links-section p, .seo-links-section h2 {color:#241b21!important}
.tags-section p, .tags-section h2 {color:#241b21!important}
.content-section p, .content-section h2 {color:#241b21!important}
.areas-section p, .areas-section h2 {color:#241b21!important}
.gallery-section p, .gallery-section h2 {color:#241b21!important}
.section-copy-panel p, .section-copy-panel h2 {color:#241b21!important}
.callgirls-section p, .callgirls-section h2 {color:#241b21!important}
.section-copy-inner p {color:#241b21!important}
.section-copy-inner h2 {color:#5a1e3c!important}


/* ============== PADDING/MARGIN NORMALIZATION ============== */
.area-content{padding:40px 0!important}
.content-wrapper{padding:0 20px!important}
.area-description{padding:28px!important;margin-bottom:30px!important}
.local-info-section{margin-bottom:24px!important}
.local-info-section p{margin-bottom:12px!important;line-height:1.7!important}
.local-info-section h2{margin-bottom:14px!important}
.v10-cards-grid{gap:16px!important;margin:16px 0!important}
.v10-card{padding:18px!important}
.v10-svc-list{gap:10px!important;margin:14px 0!important}
.v10-svc-row{padding:14px!important}
.v10-steps{gap:12px!important;margin:14px 0!important}
.v10-step{gap:12px!important}
.v10-faq-item{margin-bottom:8px!important}
.v10-faq-item summary{padding:12px 16px!important}
.v10-faq-body{padding:0 16px 12px!important}
.v10-cta{padding:28px 20px!important;margin-top:24px!important}
.v10-note{padding:10px 14px!important;margin-top:10px!important}
.related-areas-strip{padding:24px!important;margin:20px 0!important}
.local-faq-block{padding:24px!important;margin:20px 0!important}
.local-visual-break{margin:20px 0!important}
.area-hero{padding:60px 0 40px!important}
section{padding:40px 0!important}
.container{padding:0 20px!important}
main{padding:0!important}
footer{padding:32px 0 24px!important}
.footer-content{gap:24px!important;margin-bottom:20px!important}
.footer-bottom{padding-top:16px!important}
.breadcrumb-nav{padding:8px 0!important}
.breadcrumb{padding:0!important}
@media(max-width:768px){
  .area-content{padding:24px 0!important}
  .area-description{padding:18px!important;margin-bottom:20px!important}
  .local-info-section{margin-bottom:18px!important}
  .v10-card{padding:14px!important}
  .v10-svc-row{padding:12px!important}
  .v10-cta{padding:20px 14px!important}
  .related-areas-strip{padding:16px!important}
  .local-faq-block{padding:16px!important}
  .area-hero{padding:40px 0 24px!important}
  section{padding:24px 0!important}
  footer{padding:24px 0 16px!important}
}
