/*
Theme Name: RWC Brisbane Premium
Theme URI: https://rwcbrisbane.com.au/
Author: OpenAI for West End Service Centre
Description: Premium Brisbane roadworthy and interstate inspection theme for RWC Brisbane.
Version: 1.1.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: rwcbrisbane
*/

:root{
  --navy:#071525;
  --navy-2:#0b1c2e;
  --navy-3:#11263b;
  --ink:#111b26;
  --slate:#596979;
  --steel:#8c9baa;
  --paper:#f4f6f8;
  --surface:#ffffff;
  --line:#dbe1e7;
  --line-dark:#263b50;
  --blue:#1769e0;
  --blue-2:#0e56bd;
  --blue-soft:#eaf2ff;
  --silver:#eef2f5;
  --white:#fff;
  --radius:16px;
  --radius-lg:24px;
  --shadow:0 24px 60px rgba(7,21,37,.10);
  --shadow-soft:0 12px 35px rgba(7,21,37,.07);
  --max:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--paper);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
button,input,textarea,select{font:inherit}
.container{width:min(calc(100% - 44px),var(--max));margin:auto}
.screen-reader-text{position:absolute;left:-9999px}

.topbar{background:#030b13;color:#bdc8d3;font-size:12px;letter-spacing:.015em;border-bottom:1px solid rgba(255,255,255,.08)}
.topbar .container{display:flex;justify-content:space-between;gap:20px;padding:9px 0;align-items:center}
.topbar strong{color:#fff;font-weight:800}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-bottom:1px solid rgba(17,27,38,.08);box-shadow:0 4px 20px rgba(7,21,37,.035)}
.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:flex;align-items:center;gap:13px;min-width:max-content;color:var(--navy);font-size:21px;font-weight:850;letter-spacing:-.035em;line-height:1.05}
.brand-mark{width:46px;height:46px;display:grid;place-items:center;background:var(--navy);color:#fff;font-size:12px;font-weight:900;letter-spacing:.08em;border-radius:8px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.brand small{display:block;margin-top:5px;color:#71808e;font-size:9.5px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}
.primary-nav{display:flex;align-items:center;gap:28px;font-size:13.5px;font-weight:720;margin-left:auto}
.primary-nav a{color:#2f3e4c;transition:color .18s ease}.primary-nav a:hover{color:var(--blue)}
.primary-nav li{list-style:none;margin:0;padding:0}
.header-actions{display:flex;align-items:center;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 19px;border-radius:9px;border:1px solid transparent;font-size:13.5px;font-weight:800;letter-spacing:.005em;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease;cursor:pointer}
.btn:hover{transform:translateY(-1px)}
.btn-accent{background:var(--blue);color:#fff;box-shadow:0 10px 24px rgba(23,105,224,.18)}
.btn-accent:hover{background:var(--blue-2)}
.btn-dark{background:var(--navy);color:#fff;border-color:var(--navy)}
.btn-dark:hover{background:#0b2034}
.btn-outline{background:transparent;color:var(--navy);border-color:#cbd4dd}.btn-outline:hover{border-color:#9ba9b6;background:#f8fafc}
.btn-light{background:#fff;color:var(--navy);border-color:var(--line);box-shadow:0 6px 20px rgba(7,21,37,.05)}
.menu-toggle{display:none;border:1px solid var(--line);background:#fff;color:var(--navy);border-radius:9px;padding:9px 12px;font-weight:800}

.hero{position:relative;overflow:hidden;background:var(--navy);color:#fff;padding:104px 0 88px}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(to right,#000,transparent 72%);opacity:.7}
.hero:after{content:"";position:absolute;width:700px;height:700px;border:1px solid rgba(255,255,255,.07);border-radius:50%;right:-270px;top:-320px;box-shadow:0 0 0 90px rgba(255,255,255,.025),0 0 0 180px rgba(255,255,255,.018)}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.72fr);gap:80px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:10px;color:#9fc3f8;font-size:11px;font-weight:850;letter-spacing:.16em;text-transform:uppercase;margin-bottom:18px}
.eyebrow:before{content:"";width:28px;height:1px;background:currentColor;opacity:.8}
.eyebrow-dark{color:var(--blue)}
.hero h1,.page-hero h1{margin:0;max-width:820px;font-size:clamp(43px,5.8vw,76px);line-height:1.01;letter-spacing:-.055em;font-weight:820}
.hero p{max-width:700px;margin:24px 0 0;color:#c8d5e0;font-size:18px;line-height:1.7}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.hero .btn-outline,.page-hero .btn-outline,.section-dark .btn-outline{color:#fff;border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.02)}
.hero .btn-outline:hover,.page-hero .btn-outline:hover,.section-dark .btn-outline:hover{border-color:rgba(255,255,255,.65);background:rgba(255,255,255,.06)}
.trust-row{display:flex;flex-wrap:wrap;gap:20px 28px;margin-top:37px;padding-top:25px;border-top:1px solid rgba(255,255,255,.12);font-size:12.5px;color:#d5dee7}
.trust-row span{display:flex;align-items:center;gap:8px}.trust-row i{width:7px;height:7px;border-radius:50%;background:#6ea8ff;box-shadow:0 0 0 5px rgba(110,168,255,.09)}

.credential-panel{background:#fff;color:var(--ink);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 34px 80px rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.14)}
.credential-head{padding:24px 26px;background:#f8fafc;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px}
.credential-head small{display:block;color:var(--slate);font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:850}.credential-head strong{display:block;font-size:17px;margin-top:3px;color:var(--navy)}
.credential-seal{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue);font-weight:900;font-size:15px}
.credential-list{padding:4px 26px 8px}.credential-row{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.credential-row:last-child{border-bottom:0}.credential-row small{display:block;color:var(--slate);font-size:11px;margin-bottom:3px}.credential-row strong{font-size:15px;color:var(--navy)}.credential-value{text-align:right;font-weight:850;color:var(--navy)}
.credential-price{padding:22px 26px;background:var(--navy);color:#fff;display:flex;justify-content:space-between;align-items:end;gap:20px}.credential-price small{display:block;color:#9eb0c0;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.credential-price strong{font-size:36px;line-height:1;letter-spacing:-.04em}.credential-price span{font-size:11px;color:#aebdca;text-align:right;max-width:135px}

.section{padding:96px 0}.section-sm{padding:66px 0}.section-white{background:#fff}.section-dark{background:var(--navy);color:#fff}.section-dark .section-title p{color:#adbdca}.section-dark .eyebrow{color:#9fc3f8}
.section-title{max-width:790px;margin-bottom:46px}.section-title h2{margin:0;color:var(--navy);font-size:clamp(34px,4.6vw,55px);line-height:1.08;letter-spacing:-.045em;font-weight:810}.section-dark .section-title h2{color:#fff}.section-title p{margin:18px 0 0;color:var(--slate);font-size:17px;line-height:1.75}

.service-split{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:#fff;box-shadow:var(--shadow-soft)}
.service-card{min-height:400px;padding:38px 40px;display:flex;flex-direction:column;justify-content:space-between;gap:30px;background:#fff}.service-card+ .service-card{border-left:1px solid var(--line)}
.service-card .meta{color:var(--blue);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.15em;margin-bottom:18px}.service-card h3{margin:0;color:var(--navy);font-size:38px;line-height:1.07;letter-spacing:-.04em}.service-card p{margin:18px 0 0;color:var(--slate);font-size:15.5px;line-height:1.75}.service-card.nsw{background:#f7f9fb}.service-card .btn{align-self:flex-start}

.price-strip{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px 28px;display:grid;grid-template-columns:minmax(250px,.85fr) 1.4fr;gap:35px;align-items:center;box-shadow:0 8px 26px rgba(7,21,37,.045)}
.price-strip small{display:block;color:var(--slate);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.price{font-size:34px;line-height:1.1;letter-spacing:-.04em;font-weight:850;color:var(--navy);margin-top:5px}.fine{border-left:1px solid var(--line);padding-left:35px;color:var(--slate);font-size:13px;line-height:1.7}

.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid-2{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:54px;align-items:start}
.feature{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:29px;box-shadow:0 5px 18px rgba(7,21,37,.035)}.feature .icon{width:42px;height:42px;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue);border-radius:9px;font-size:13px;font-weight:900;margin-bottom:24px}.feature h3{margin:0;color:var(--navy);font-size:20px;letter-spacing:-.02em}.feature p{margin:10px 0 0;color:var(--slate);font-size:14.5px;line-height:1.72}

.steps{counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13)}.step{position:relative;padding:32px 28px 32px 0}.step+.step{padding-left:28px;border-left:1px solid rgba(255,255,255,.13)}.step:before{counter-increment:step;content:"0" counter(step);display:block;color:#6ea8ff;font-size:11px;letter-spacing:.13em;font-weight:900;margin-bottom:25px}.step h3{margin:0;color:#fff;font-size:19px}.step p{margin:10px 0 0;color:#9eafbe;font-size:14px;line-height:1.7}

.faq{border-top:1px solid var(--line)}.faq details{background:transparent;border-bottom:1px solid var(--line);padding:0}.faq summary{cursor:pointer;list-style:none;padding:22px 44px 22px 0;color:var(--navy);font-size:17px;font-weight:760;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:4px;top:18px;color:var(--blue);font-size:25px;font-weight:400}.faq details[open] summary:after{content:"−"}.faq p{margin:0;padding:0 60px 24px 0;max-width:900px;color:var(--slate);font-size:14.5px;line-height:1.8}

.band{background:#dfe9f7;border-top:1px solid #cbd9ea;padding:50px 0}.band-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}.band h2{margin:0;color:var(--navy);font-size:30px;letter-spacing:-.035em}.band p{margin:7px 0 0;color:#53677a}

.page-hero{background:var(--navy);color:#fff;padding:76px 0 68px;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(255,255,255,.06);border-radius:50%;right:-180px;top:-270px;box-shadow:0 0 0 75px rgba(255,255,255,.02)}.page-hero .container{position:relative;z-index:1}.page-hero h1{font-size:clamp(40px,5.4vw,68px)}.page-hero p{max-width:760px;color:#c5d1dc;font-size:17px;margin:21px 0 0}.page-hero .hero-actions{margin-top:29px}

.prose h2{color:var(--navy);font-size:31px;line-height:1.17;letter-spacing:-.035em;margin:50px 0 14px}.prose h2:first-child{margin-top:0}.prose p,.prose li{color:#526272;font-size:15.5px;line-height:1.8}.prose ul{padding-left:20px}.prose li+li{margin-top:8px}
.notice{border-left:3px solid var(--blue);background:#eef4fc;padding:20px 22px;color:#44586b;border-radius:0 10px 10px 0;font-size:14px;line-height:1.75}.notice strong{display:block;color:var(--navy);font-size:14px;margin-bottom:5px}.notice.blue{border-left-color:var(--blue);background:var(--blue-soft)}

.inspect-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff}.inspect-item{padding:27px;min-height:148px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.inspect-item:nth-child(3n){border-right:0}.inspect-item:nth-last-child(-n+3){border-bottom:0}.inspect-item strong{display:block;color:var(--navy);font-size:17px;margin-bottom:8px}.inspect-item span{display:block;color:var(--slate);font-size:13.5px;line-height:1.65}

.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:30px;align-items:stretch}.contact-card{background:#fff;border:1px solid var(--line);padding:34px;border-radius:var(--radius);box-shadow:var(--shadow-soft)}.contact-card h3{margin:0 0 16px;color:var(--navy);font-size:27px;letter-spacing:-.03em}.contact-row{padding:15px 0;border-top:1px solid var(--line)}.contact-row:first-of-type{border-top:0}.contact-row small{display:block;color:var(--slate);text-transform:uppercase;letter-spacing:.1em;font-weight:800;font-size:9.5px;margin-bottom:3px}.contact-row strong{font-size:15.5px;color:var(--navy)}.map-frame{width:100%;height:100%;min-height:480px;border:0;border-radius:var(--radius);background:#dfe5e9;box-shadow:var(--shadow-soft)}

.site-footer{background:#030b13;color:#9eacb8;padding:62px 0 24px}.site-footer .brand{color:#fff}.site-footer .brand-mark{background:#fff;color:var(--navy)}.site-footer .brand small{color:#778795}.site-footer p{font-size:13.5px;line-height:1.8}.footer-grid{display:grid;grid-template-columns:1.45fr .8fr .8fr;gap:60px}.footer-title{font-size:13px;color:#fff;font-weight:800;margin-bottom:16px;text-transform:uppercase;letter-spacing:.1em}.footer-links{display:grid;gap:9px;font-size:13px}.footer-links a:hover{color:#fff}.footer-bottom{margin-top:48px;padding-top:22px;border-top:1px solid rgba(255,255,255,.09);display:flex;justify-content:space-between;gap:28px;font-size:11.5px;color:#6f7f8d}.footer-bottom span:last-child{max-width:680px;text-align:right}.sticky-mobile{display:none}

@media(max-width:1050px){.primary-nav{gap:18px}.header-actions .btn-outline{display:none}.hero-grid{grid-template-columns:1fr .72fr;gap:45px}.grid-3{grid-template-columns:1fr 1fr}.grid-3 .feature:last-child{grid-column:1/-1}.steps{grid-template-columns:1fr 1fr}.step:nth-child(3){border-left:0}.step:nth-child(n+3){border-top:1px solid rgba(255,255,255,.13)}.inspect-grid{grid-template-columns:1fr 1fr}.inspect-item:nth-child(3n){border-right:1px solid var(--line)}.inspect-item:nth-child(2n){border-right:0}.inspect-item:nth-last-child(-n+3){border-bottom:1px solid var(--line)}.inspect-item:nth-last-child(-n+2){border-bottom:0}}
@media(max-width:900px){.primary-nav{display:none}.menu-toggle{display:block}.primary-nav.open{display:flex;position:absolute;left:22px;right:22px;top:92px;flex-direction:column;align-items:flex-start;gap:0;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;box-shadow:var(--shadow)}.primary-nav.open a{display:block;width:100%;padding:11px 8px}.hero{padding:78px 0 65px}.hero-grid,.grid-2,.contact-grid{grid-template-columns:1fr}.credential-panel{max-width:680px}.service-split{grid-template-columns:1fr}.service-card+.service-card{border-left:0;border-top:1px solid var(--line)}.price-strip{grid-template-columns:1fr}.fine{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:650px){.container{width:min(calc(100% - 28px),var(--max))}.topbar{display:none}.header-inner{min-height:70px}.brand{font-size:18px}.brand-mark{width:40px;height:40px;font-size:11px}.header-actions>.btn{display:none}.hero{padding:62px 0 50px}.hero h1{font-size:44px}.hero p{font-size:16px}.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions .btn{width:100%}.trust-row{display:grid;gap:13px}.credential-head,.credential-list,.credential-price{padding-left:20px;padding-right:20px}.credential-price strong{font-size:31px}.section{padding:68px 0}.section-sm{padding:48px 0}.section-title{margin-bottom:32px}.service-card{min-height:0;padding:29px 24px}.service-card h3{font-size:31px}.grid-3{grid-template-columns:1fr}.grid-3 .feature:last-child{grid-column:auto}.steps{grid-template-columns:1fr}.step,.step+.step{padding:25px 0;border-left:0;border-top:1px solid rgba(255,255,255,.13)}.step:first-child{border-top:0}.inspect-grid{grid-template-columns:1fr}.inspect-item,.inspect-item:nth-child(3n),.inspect-item:nth-child(2n){border-right:0}.inspect-item:nth-last-child(-n+2){border-bottom:1px solid var(--line)}.inspect-item:last-child{border-bottom:0}.band-inner{display:block}.band .btn{margin-top:22px;width:100%}.footer-grid{grid-template-columns:1fr;gap:34px}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:block;padding-bottom:74px}.footer-bottom span{display:block}.footer-bottom span:last-child{text-align:left;margin-top:10px}.sticky-mobile{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:1200;background:#fff;border-top:1px solid var(--line);padding:8px;gap:8px;box-shadow:0 -8px 24px rgba(7,21,37,.08)}.sticky-mobile .btn{min-height:44px;padding:10px}.sticky-mobile .btn-light{background:#fff;color:var(--navy)}.page-hero{padding:55px 0 48px}.page-hero h1{font-size:42px}.faq summary{font-size:15.5px;padding-right:36px}.faq p{padding-right:10px}}


/* Back to top */
.back-to-top{
  position:fixed;
  right:24px;
  bottom:96px;
  z-index:1190;
  width:46px;
  height:46px;
  padding:0;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.14);
  border-radius:50%;
  background:#08111d;
  color:#fff;
  box-shadow:0 12px 30px rgba(3,11,19,.22);
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  transform:translateY(10px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease,background .2s ease;
}
.back-to-top svg{width:22px;height:22px;fill:currentColor}
.back-to-top:hover{background:#145bd7;transform:translateY(-2px)}
.back-to-top:focus-visible{outline:3px solid rgba(20,91,215,.28);outline-offset:3px}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
@media(max-width:650px){
  .back-to-top{right:14px;bottom:76px;width:42px;height:42px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .back-to-top{transition:none}
}
