/* Shared layout for Australia, city, service and legal pages. */
.site-directory .w,.site-legal header .w,.site-legal footer .w{max-width:1240px;padding-inline:24px}
.site-directory main.w{padding-bottom:10px}
.site-directory .crumbs,.site-legal .crumbs{padding-top:14px;margin-bottom:10px}
.site-directory h1{font-size:clamp(30px,3.5vw,44px);letter-spacing:-1.3px;max-width:30ch;margin:8px 0 12px}
.site-directory .lede{font-size:17px;line-height:1.6;max-width:82ch;margin:10px 0}
.site-directory main>p:not(.more):not(.tip):not(.crumbs){max-width:82ch}
.site-directory .cta{gap:10px;margin:18px 0 24px}
.site-directory h2{font-size:25px;letter-spacing:-.5px;margin:26px 0 12px}
.site-directory .grid{gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin:12px 0 22px}
.site-directory .grid li{padding:14px 16px;line-height:1.45;border-radius:12px}
.site-directory .grid li a{display:inline-block;margin-bottom:4px;text-underline-offset:3px}
.site-directory .steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0 22px}
.site-directory .steps li{padding:15px 16px 15px 48px;line-height:1.6;font-size:15px}
.site-directory .steps li::before{top:16px;left:13px}
.site-directory .tip{max-width:82ch;line-height:1.6;padding:14px 17px}
.site-directory .site-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start;margin:12px 0 22px}
.site-directory .site-faq details{margin:0;padding:0 16px;border-radius:12px;min-width:0}
.site-directory .site-faq summary{min-height:52px;align-content:center;line-height:1.5;padding:12px 0}
.site-directory .site-faq details p{font-size:15px;line-height:1.6;max-width:72ch;margin:0 0 15px}
.site-directory .sub{columns:auto;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px 16px;margin:12px 0 22px;line-height:1.5}
.site-directory .more{gap:7px 16px;line-height:1.6}
.site-directory footer,.site-legal footer{margin-top:32px;padding-block:20px 28px}
.site-directory footer p,.site-legal footer p{max-width:110ch;line-height:1.6}
.site-directory .btn,.site-legal .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;line-height:1.4}
.site-directory :focus-visible,.site-legal :focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.site-legal main.legal{max-width:72ch;padding-inline:24px}
.site-legal .legal h1{font-size:clamp(30px,4vw,42px);letter-spacing:-1px}
.site-legal .legal h2{margin-top:26px}
.site-legal .legal .lede{font-size:17px;line-height:1.65;max-width:none}
.site-legal .toc{padding:14px 18px;line-height:1.5;column-gap:24px}
.site-legal .toc a{padding-block:6px}
@media(max-width:1000px){
 .site-directory .grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .site-directory .sub{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:760px){
 .site-directory .w,.site-legal header .w,.site-legal footer .w,.site-legal main.legal{padding-inline:18px}
 .site-directory h1{font-size:34px;letter-spacing:-1px}
 .site-directory h2{font-size:24px;margin-top:24px}
 .site-directory .lede{font-size:16px;line-height:1.6}
 .site-directory .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .site-directory .steps{grid-template-columns:1fr;gap:9px}
 .site-directory .steps li{padding-block:13px}
 .site-directory .site-faq{grid-template-columns:1fr;gap:8px}
 .site-directory .sub{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 12px;font-size:14px}
 .site-directory .more{gap:4px 14px}
 .site-directory .more a{min-height:44px;display:inline-flex;align-items:center;line-height:1.4}
 .site-directory footer,.site-legal footer{margin-top:24px}
}
@media(max-width:420px){
 .site-directory .grid{grid-template-columns:1fr}
 .site-directory .grid li{padding:13px 15px}
 .site-directory .grid li a{min-height:32px;align-content:center}
 .site-directory .sub{grid-template-columns:repeat(2,minmax(0,1fr))}
 .site-directory header .btn,.site-legal header .btn{font-size:14px;padding-inline:15px}
}
