/* Australia Escorts Directory | 2026 compact premium system
   Loaded after legacy palette and FAQ styles, shared across public pages. */
:root {
  --au-forest:#102820;
  --au-forest-dark:#0d1e19;
  --au-green:#047c45;
  --au-bright:#0e985a;
  --au-gold:#eec758;
  --au-paper:#fff;
  --au-mist:#f4f8f5;
  --au-border:#dce8df;
  --au-text:#182a22;
  --au-muted:#576b5e;
  --au-shadow:0 7px 24px rgba(9,44,26,.07);
}
html { scroll-padding-top:85px; }
html,body { max-width:100%; overflow-x:clip; }
body { font-size:15px; line-height:1.55; }
body :where(a,button,input,select,textarea,summary):focus-visible {
  outline:3px solid var(--au-gold) !important;
  outline-offset:3px;
}
/* Text-only header/footer logo. Responsive and sharp at every scale. */
body .au-text-logo,
body .au-text-logo.lp10-site-logo {
  display:inline-flex !important; flex-direction:column; justify-content:center;
  align-items:flex-start; width:max-content; max-width:100%; height:auto;
  padding:0; margin:0; line-height:1; text-decoration:none; white-space:nowrap;
  color:#fff !important; object-fit:initial;
}
body .au-text-logo-title {
  display:block; color:#fff !important; font-family:inherit; font-size:clamp(19px,1.45vw,27px);
  font-weight:900; letter-spacing:-.065em; line-height:1.1; text-transform:none;
}
body .au-text-logo-title .au-text-logo-accent { color:var(--au-gold) !important; }
body .au-text-logo-tagline { color:#a9d7b8 !important; display:block; padding-top:5px;
  font-size:9px; font-weight:800; letter-spacing:.12em; line-height:1.3; }
body .site-header.premium-header {
  width:100% !important; max-width:100% !important; margin:0 !important;
  background:var(--au-forest-dark) !important; border-top:4px solid var(--au-green) !important;
  border-bottom:1px solid #345c46 !important; position:relative; z-index:1000;
}
body .site-header.premium-header .premium-header-inner {
  width:100% !important; max-width:100% !important; min-height:106px !important;
  display:flex; align-items:stretch; box-sizing:border-box; padding:0 20px !important; gap:22px;
}
body .site-header.premium-header .header-logo {
  flex:0 0 230px !important; width:230px !important; height:auto !important; min-height:106px;
  margin:0 !important; padding:0 !important; background:none !important;
  overflow:visible; display:flex; align-items:center;
}
body .site-header.premium-header .site-logo-link {
  display:flex; align-items:center; width:100%; height:100%; text-decoration:none; overflow:visible;
}
body .site-header.premium-header .premium-header-main { flex:1 1 auto; min-width:0; width:auto; }
body .site-header.premium-header .premium-header-top {
  height:51px !important; min-height:51px; padding:5px 0;
  display:flex; justify-content:flex-end; align-items:center; gap:12px;
  border-bottom:1px solid rgba(255,255,255,.12) !important;
}
body .site-header.premium-header .header-search {
  flex:1 1 420px !important; min-width:160px !important; max-width:760px !important;
  margin:0 !important;
}
body .site-header.premium-header .header-search form {
  display:flex; align-items:center; min-height:38px !important; width:100%; border-radius:9px !important;
  background:#142820 !important; border:1px solid #3b7052 !important; box-shadow:none !important;
}
body .site-header.premium-header .header-search input {
  width:100%; min-width:0; min-height:38px; padding:8px 13px !important;
  border:0 !important; background:transparent !important; font-size:14px; color:#fff !important;
}
body .site-header.premium-header .header-search button {
  display:inline-flex; align-items:center; justify-content:center;
  min-height:38px; padding:7px 14px !important; border-radius:0 8px 8px 0 !important;
  background:var(--au-green) !important; color:#fff !important;
  border:0 !important; box-shadow:none !important; font-size:13px !important;
}
body .site-header.premium-header .header-auth {
  display:flex; align-items:center; justify-content:flex-end; gap:7px; flex:0 0 auto;
  margin:0 !important; white-space:nowrap;
}
body .site-header.premium-header .header-auth .btn-auth {
  display:inline-flex; align-items:center; justify-content:center; min-height:36px !important;
  height:36px !important; padding:0 12px !important; border-radius:7px !important;
  font-size:13px !important; font-weight:700 !important; white-space:nowrap;
  color:#f8fff9 !important; border:1px solid #496556 !important;
  background:transparent !important;
}
body .site-header.premium-header .header-auth .btn-register {
  color:#102820 !important; background:var(--au-gold) !important;
  border-color:var(--au-gold) !important;
}
body .site-header.premium-header .header-auth .btn-auth:hover {
  border-color:var(--au-gold) !important; color:var(--au-gold) !important;
}
body .site-header.premium-header .header-auth .btn-register:hover { color:var(--au-forest-dark) !important; }
body .site-header.premium-header .premium-header-bottom {
  display:flex; flex-wrap:nowrap; align-items:center; gap:14px; height:55px !important; min-height:55px;
  width:100%; min-width:0; background:none !important;
}
body .site-header.premium-header .header-ad {
  flex:0 0 255px !important; width:255px !important; height:42px !important;
  overflow:hidden; margin:0 !important; border-radius:7px;
}
body .site-header.premium-header .header-ad a,
body .site-header.premium-header .header-ad img { height:100% !important; width:100% !important; display:block; object-fit:cover; }
body .site-header.premium-header .header-nav {
  display:flex; align-items:center; justify-content:flex-end; height:55px !important;
  flex:1 1 auto; min-width:0; margin:0 !important; overflow:visible;
}
body .site-header.premium-header .nav-menu,
body .site-header.premium-header .wx-primary-menu {
  display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important;
  align-items:center; justify-content:flex-end; width:100%; min-width:0; overflow:visible !important;
  gap:clamp(1px,.25vw,5px) !important; margin:0 !important; padding:0 !important;
  list-style:none;
}
body .site-header.premium-header .nav-menu li { display:flex; flex:0 0 auto; padding:0 !important; margin:0 !important; }
body .site-header.premium-header .nav-menu li a {
  display:inline-flex; align-items:center; justify-content:center; min-height:38px; height:auto !important;
  padding:7px clamp(5px,.4vw,9px) !important; font-size:clamp(12px,.77vw,14px) !important;
  font-weight:600 !important; line-height:1.25 !important; white-space:nowrap;
  border-radius:7px !important; border:1px solid transparent !important;
  background:transparent !important; color:#f3f8f3 !important;
  text-decoration:none !important;
}
body .site-header.premium-header .nav-menu li a:hover,
body .site-header.premium-header .nav-menu li a:focus-visible {
  color:var(--au-gold) !important; background:#223b2e !important; border-color:#3e674c !important;
}
@media (max-width:1650px) and (min-width:1241px) {
  body .site-header.premium-header .header-ad { display:none !important; }
}
@media (max-width:1430px) and (min-width:1241px) {
  body .site-header.premium-header .premium-header-inner { gap:10px; padding:0 12px !important; }
  body .site-header.premium-header .header-logo { flex-basis:205px !important; width:205px !important; }
  body .site-header.premium-header .nav-menu li a { padding-inline:5px !important; font-size:12px !important; }
}
@media (min-width:1241px) {
  body .site-header.premium-header .mobile-premium-header { display:none !important; }
}
@media (max-width:1240px) {
  body .site-header.premium-header .premium-header-inner { display:none !important; }
  body .site-header.premium-header .mobile-premium-header {
    display:block !important; width:100% !important; max-width:100% !important;
    background:var(--au-forest-dark) !important;
  }
  body .site-header.premium-header .mobile-top-row {
    height:39px !important; min-height:39px; display:flex; padding:0 14px !important;
    align-items:center; justify-content:flex-end; gap:8px; border-bottom:1px solid #2d4938 !important;
  }
  body .site-header.premium-header .mobile-bottom-row {
    min-height:60px !important; height:auto !important;
    padding:6px 12px !important; align-items:center; gap:8px;
  }
  body .site-header.premium-header .mobile-logo-link { flex:0 1 auto; max-width:45%; min-width:0; }
  body .site-header.premium-header .au-text-logo-title { font-size:clamp(15px,2.5vw,22px); }
  body .site-header.premium-header .au-text-logo-tagline { font-size:clamp(6px,.95vw,8px); }
  body .site-header.premium-header .mobile-search-icon,
  body .site-header.premium-header .mobile-menu-btn,
  body .site-header.premium-header .mobile-cc-toggle {
    border:1px solid #3b634b !important; background:#142b20 !important;
    color:#fff !important; border-radius:8px !important;
  }
}
/* Editorial and directory shells: full viewport, controlled inner gutters. */
body :where(.home-main,.home-grid,.wx-page,.blog-main,.loc-page,.location-page,.sx-packages,.site-main) {
  width:100% !important; max-width:100% !important; margin-left:0 !important; margin-right:0 !important;
  box-sizing:border-box;
}
body .home-main .home-grid {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,300px) !important;
  column-gap:10px !important; row-gap:0; align-items:start; padding:0 12px !important;
}
body .home-main .home-left { min-width:0; padding:10px 0 14px !important; box-sizing:border-box; }
body .home-main .home-right.main-right { min-width:0; width:100%; padding:10px 0 12px !important; }
body .home-main .listing-block,
body .home-main .banner-wrap,
body .home-main .fp-trust-strip,
body .home-main .fp-premium-copy { margin-bottom:12px !important; }
body .home-main .listing-block {
  padding:clamp(10px,1vw,16px) !important; border:1px solid var(--au-border) !important;
  border-radius:12px !important; box-shadow:var(--au-shadow) !important;
}
body .home-main .fp-hero,
body .home-main .fp-hero.fp-hero-destination-layout {
  border:1px solid #cae3d0 !important; border-radius:14px !important;
  background:linear-gradient(125deg,#fff 0%,#f1faf4 60%,#fff9e6 100%) !important;
  box-shadow:var(--au-shadow) !important; margin:0 0 12px !important;
  padding:clamp(14px,1.35vw,24px) !important;
}
body .home-main .fp-hero h1 { color:#064c2a !important; font-size:clamp(25px,2.4vw,39px) !important; line-height:1.15 !important; }
body .home-main .fp-hero p { color:#3c5645 !important; font-size:clamp(14px,.9vw,16px) !important; line-height:1.6 !important; }
body .home-main .fp-hero-destination-card { border-radius:9px !important; border-color:#d7e7dc !important; background:#fff !important; box-shadow:none !important; }
body .home-main .fp-hero-destination-copy strong { color:#1a3426 !important; }
body .home-main .fp-hero-destination-copy em { color:#536a5c !important; }
body .home-main .fp-trust-strip > div,
body .home-main .fp-seo-content article { border-color:var(--au-border) !important; border-radius:10px !important; box-shadow:var(--au-shadow) !important; }
body .home-main .block-title,
body .home-main .section-title { color:var(--au-forest) !important; font-size:clamp(18px,1.25vw,23px) !important; }
body .loc-compact-hero,
body .loc-popular-strip,
body .loc-directory-shell,
body .loc-no-results { max-width:100% !important; }
body .loc-page { padding:12px clamp(12px,1.4vw,24px) 26px !important; }
body .wx-page,
body .blog-main,
body .sx-packages,
body .location-page { padding-left:clamp(12px,1.2vw,24px) !important; padding-right:clamp(12px,1.2vw,24px) !important; }
body .site-footer.premium-footer { width:100% !important; max-width:100% !important; margin:0 !important; border-top:3px solid var(--au-green) !important; }
body .site-footer .footer-inner { width:100% !important; max-width:100% !important; padding-left:clamp(12px,1.4vw,26px) !important; padding-right:clamp(12px,1.4vw,26px) !important; }
body .site-footer .au-text-logo-title { font-size:clamp(20px,1.5vw,28px); }
/* The FAQ in the screenshots had unreadable green headings and large gaps. */
body .bsr-account-help {
  width:100% !important; margin:0 !important; padding:22px clamp(12px,1.4vw,26px) !important;
  background:linear-gradient(120deg,#0a2117,#0f2d21 55%,#102a24) !important; color:#f7fbf7 !important;
}
body .bsr-account-help .bsr-help-eyebrow { color:var(--au-gold) !important; font-size:11px !important; letter-spacing:.12em; }
body .bsr-account-help h2,
body .bsr-account-help h3 {
  color:#f9fcf9 !important; text-shadow:none !important; letter-spacing:-.025em;
}
body .bsr-account-help h2 { font-size:clamp(25px,2.2vw,34px) !important; line-height:1.16 !important; margin:0 0 14px !important; }
body .bsr-account-help h3 { font-size:clamp(19px,1.6vw,25px) !important; line-height:1.25 !important; margin:0 0 12px !important; }
body .bsr-account-help .bsr-help-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; align-items:start; }
body .bsr-account-help .bsr-help-column { display:grid; grid-template-columns:minmax(0,1fr); gap:9px; align-content:start; min-width:0; }
body .bsr-account-help .bsr-help-item {
  min-width:0; margin:0 !important; border:1px solid #355544 !important; border-radius:11px !important;
  background:#173528 !important; box-shadow:none !important;
}
body .bsr-account-help .bsr-help-item[open] { background:#1d402e !important; border-color:#698c62 !important; }
body .bsr-account-help .bsr-help-item summary {
  display:flex; align-items:center; gap:12px; min-height:52px; padding:11px 14px !important;
  color:#fff !important; font-size:clamp(14px,.9vw,16px) !important;
  font-weight:700 !important; line-height:1.35 !important;
}
body .bsr-account-help .bsr-help-item > p {
  color:#dceee1 !important; padding:0 14px 14px !important;
  font-size:14px !important; line-height:1.6 !important;
}
body .bsr-account-help .bsr-help-toggle {
  display:grid; flex:0 0 26px; width:26px; height:26px;
  border-radius:7px !important; background:var(--au-green) !important;
  color:#fff !important; font-size:20px !important; line-height:1 !important;
}
body .bsr-account-help .bsr-help-tags {
  margin:16px 0 0 !important; padding:16px !important; border:1px solid #3c654b !important;
  border-radius:12px !important; background:linear-gradient(110deg,#123b2a,#16372b) !important;
}
body .bsr-account-help ul { gap:7px !important; margin:0 !important; padding:0 !important; }
body .bsr-account-help li {
  padding:7px 12px !important; border:1px solid #477454 !important;
  border-radius:7px !important; background:#1d4731 !important;
  color:#eff9ee !important; font-size:13px !important; line-height:1.35 !important;
}
/* Compact national editorial module. Real paragraphs remain crawlable in HTML. */
body .fp-premium-copy .au-editorial-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
body .fp-premium-copy .au-editorial-grid article { min-width:0; padding:17px !important; margin:0 !important; }
body .fp-premium-copy .au-editorial-grid h3,
body .fp-premium-copy .au-editorial-feature h3 { margin:0 0 8px; color:#064c2a !important; font-size:clamp(17px,1.12vw,21px) !important; }
body .fp-premium-copy .au-editorial-grid p,
body .fp-premium-copy .au-editorial-feature p,
body .fp-premium-copy .au-editorial-feature li { color:#354c3d !important; font-size:14px !important; line-height:1.65 !important; }
body .fp-premium-copy .au-editorial-feature { padding:16px !important; margin:0 0 12px !important; }
body .fp-premium-copy .au-editorial-feature ul { margin:8px 0 0; padding-left:22px; }
body .fp-premium-copy .au-editorial-feature a { color:#067b45 !important; text-decoration:underline; text-underline-offset:2px; }
@media (max-width:1240px) {
  body .home-main .home-grid { grid-template-columns:minmax(0,1fr) 245px !important; }
}
@media (max-width:1020px) {
  body .home-main .home-grid { grid-template-columns:minmax(0,1fr) !important; }
  body .home-main .home-left-top,
  body .home-main .home-right.main-right,
  body .home-main .home-left-content { grid-column:1 !important; grid-row:auto !important; }
  body .home-main .home-left-top { order:1; }
  body .home-main .home-right.main-right { order:2; margin:0 !important; }
  body .home-main .home-left-content { order:3; }
}
@media (max-width:700px) {
  body .bsr-account-help .bsr-help-grid,
  body .fp-premium-copy .au-editorial-grid { grid-template-columns:minmax(0,1fr) !important; }
  body .bsr-account-help .bsr-help-item summary { min-height:48px; padding:10px 12px !important; }
  body .home-main .home-grid { padding:0 9px !important; }
  body .home-main .fp-hero { padding:13px !important; }
  body .site-header.premium-header .mobile-bottom-row { flex-wrap:wrap; }
  body .bsr-account-help { padding-block:17px !important; }
  body .bsr-account-help .bsr-help-tags { padding:12px !important; }
  body .fp-premium-copy .au-editorial-grid article { padding:13px !important; }
}
@media (prefers-reduced-motion: reduce) {
  body .site-header.premium-header *,
  body .bsr-account-help *,
  body .home-main * { transition:none !important; animation:none !important; scroll-behavior:auto !important; }
}
/* Full-screen shells on profile, listings, review, contact, and blog templates. */
body .single-profile,
body .city-page,
body .bsr-reviews-page,
body .wx-info-page,
body .wx-new-page,
body .home-main.trans-directory-main,
body .home-main.couple-directory-main {
  width:100% !important; max-width:100% !important;
  margin-left:0 !important; margin-right:0 !important;
  box-sizing:border-box;
}
body .single-profile .sd-page-grid {
  width:100% !important; max-width:100% !important;
  margin:0 !important; grid-template-columns:minmax(240px,27%) minmax(0,1fr) minmax(250px,20%) !important;
  gap:10px !important; padding:10px 12px !important; box-sizing:border-box;
}
body .single-profile .sd-left,
body .single-profile .sd-middle,
body .single-profile .sd-right { min-width:0; }
body .bsr-reviews-hero__inner,
body .bsr-reviews-toolbar,
body .bsr-reviews-grid,
body .bsr-reviews-empty,
body .wx-info-container {
  max-width:100% !important;
  box-sizing:border-box;
}
body .bsr-reviews-page .bsr-reviews-hero,
body .bsr-reviews-page .bsr-reviews-toolbar,
body .bsr-reviews-page .bsr-reviews-grid,
body .wx-info-page .wx-info-container { padding-left:clamp(12px,1.2vw,24px) !important; padding-right:clamp(12px,1.2vw,24px) !important; }
body .site-footer.premium-footer .footer-top { gap:clamp(10px,1.2vw,22px) !important; }
@media (max-width:1050px) {
  body .single-profile .sd-page-grid { grid-template-columns:minmax(200px,36%) minmax(0,1fr) !important; }
  body .single-profile .sd-right { grid-column:1 / -1; }
}
@media (max-width:700px) {
  body .single-profile .sd-page-grid { grid-template-columns:minmax(0,1fr) !important; padding:8px !important; }
  body .single-profile .sd-left,
  body .single-profile .sd-middle,
  body .single-profile .sd-right { grid-column:1 !important; }
  body .site-footer.premium-footer .footer-top { gap:14px !important; }
}
/* Compact mobile wordmark gets its own usable row; the city picker stays accessible. */
@media (max-width:640px) {
  body .site-header.premium-header .mobile-bottom-row {
    display:flex !important; flex-wrap:wrap !important;
    min-height:0 !important; padding:9px 12px !important;
    gap:7px !important;
  }
  body .site-header.premium-header .mobile-logo-link {
    display:flex !important; order:1; flex:1 1 0 !important;
    max-width:none !important; min-width:0 !important;
  }
  body .site-header.premium-header .mobile-logo-link .au-text-logo-title {
    font-size:clamp(18px,5.15vw,24px) !important;
  }
  body .site-header.premium-header .mobile-logo-link .au-text-logo-tagline { font-size:7px !important; letter-spacing:.09em; }
  body .site-header.premium-header .mobile-search-icon { order:2; flex:0 0 38px; }
  body .site-header.premium-header .mobile-menu-btn { order:3; flex:0 0 auto; min-width:69px; }
  body .site-header.premium-header .mobile-cc-wrap {
    order:4; flex:1 1 100%; width:100% !important; max-width:100% !important;
  }
  body .site-header.premium-header .mobile-cc-toggle {
    display:flex !important; justify-content:center; align-items:center;
    width:100% !important; min-height:36px; text-align:center;
  }
}


/* Research-led Sydney city page: readable, compact long-form local content. */
body .sydney-city-content .location-prose{
  color:#253a31 !important;
  font-size:clamp(15px, .95vw, 16.5px) !important;
  line-height:1.78 !important;
}
body .sydney-city-content .location-prose section{
  margin:0 0 22px !important;
  padding:0 0 18px !important;
  border-bottom:1px solid rgba(9,87,56,.13);
}
body .sydney-city-content .location-prose section:last-child{
  margin-bottom:0 !important;
  border-bottom:0;
}
body .sydney-city-content .location-prose h2{
  font-size:clamp(1.24rem,1.5vw,1.55rem) !important;
  font-weight:800 !important;
  line-height:1.3 !important;
  color:#075839 !important;
  margin:8px 0 15px !important;
  letter-spacing:-.015em;
}
body .sydney-city-content .location-prose h3{
  font-size:clamp(1.05rem,1.17vw,1.19rem) !important;
  font-weight:760 !important;
  color:#173f30 !important;
  line-height:1.4 !important;
  margin:22px 0 9px !important;
}
body .sydney-city-content .location-prose p{
  font-size:inherit !important;
  line-height:inherit !important;
  color:inherit !important;
  max-width:108ch;
  margin:0 0 15px !important;
}
body .sydney-city-content .location-prose a{
  color:#0c6846 !important;
  text-decoration:underline;
  text-underline-offset:3px;
}
body .sydney-city-content .location-prose a:hover,
body .sydney-city-content .location-prose a:focus-visible{color:#004a33 !important;}
body .sydney-city-content .location-prose .sydney-seo-intro{
  padding:clamp(14px,2vw,24px) !important;
  border:1px solid rgba(13,103,64,.22);
  border-left:4px solid #b7932e;
  border-radius:14px;
  background:linear-gradient(115deg,#f3faf6,#fffdf5);
}
@media (max-width:640px){
  body .sydney-city-content .location-prose{font-size:15.3px !important;line-height:1.72 !important;}
  body .sydney-city-content .location-prose section{margin-bottom:17px !important;padding-bottom:13px !important;}
  body .sydney-city-content .location-prose h3{margin-top:17px !important;}
}
