/* Official artwork is used whole, with its original transparent margins. */
.official-logo{width:218px;height:auto}.wordmark{gap:0}.site-footer .official-logo{width:240px}.nav-shell{gap:22px}.nav-links{gap:24px}.nav-tools{gap:16px}
.nav-country{position:relative}.country-heading{display:flex;align-items:center;gap:2px}.country-heading>a{font-size:14px;font-weight:550;white-space:nowrap;padding-block:10px}.country-toggle{display:grid;place-items:center;width:25px;height:34px;padding:7px;background:none;border:0;color:var(--muted)}.country-toggle svg{width:10px;height:8px;transition:transform .2s}.country-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.country-heading>a:hover{color:var(--blue)}.nav-country.is-current .country-heading:after{content:'';position:absolute;bottom:0;left:0;right:25px;height:2px;background:var(--gradient)}
.country-menu{display:none;position:absolute;top:100%;left:-20px;min-width:240px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 36px #112d6b14}.country-menu>a{display:block;font-size:14px;font-weight:500;padding:12px;white-space:nowrap;border-radius:6px}.country-menu>a:hover,.country-menu>a[aria-current=page]{background:var(--wash);color:var(--blue)}.nav-country:hover>.country-menu,.nav-country:focus-within>.country-menu{display:block}.nav-ready .nav-country>.country-menu{display:none}.nav-ready .nav-country.is-open>.country-menu{display:block}
/* Match the original image-space placement and bevelled silhouette. */
.home-hero{position:relative;isolation:isolate;background:#edf4ff}.hero-scene{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}.hero-canvas{position:absolute;top:50%;left:50%;width:100%;aspect-ratio:1672/941;transform:translate(-50%,-50%);background:url('/assets/sonictec-hero-background-v1.2.png') center/100% 100% no-repeat}.glass-stage{position:absolute;left:55.9%;top:3%;width:27.5%;height:85.2%;perspective:1100px;pointer-events:auto;--glass-cut:polygon(3.3% 17.8%,95.3% 1.2%,95.3% 97.7%,2.8% 91%)}
.glass-pane{position:absolute;inset:0;transform:translate3d(0,0,0) rotateX(0deg) rotateY(0deg) scale(1);transform-origin:52% 58%;transform-style:preserve-3d;transition:transform .85s cubic-bezier(.18,.75,.22,1),filter .6s;filter:drop-shadow(5px 9px 8px #27528f20)}.glass-optics,.glass-light,.glass-bevel{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.glass-optics{clip-path:var(--glass-cut);background:linear-gradient(118deg,#deefff20 0%,#ffffff03 43%,#bfdaff13 75%,#d5ddff20);backdrop-filter:blur(.35px) saturate(1.13);-webkit-backdrop-filter:blur(.35px) saturate(1.13)}.glass-light{clip-path:var(--glass-cut);background:radial-gradient(ellipse at var(--light-x,75%) var(--light-y,30%),#f1faff40 0%,#d5eeff08 38%,transparent 63%);opacity:.4;transition:opacity .5s}.glass-light:before{content:'';position:absolute;inset:-25%;background:linear-gradient(113deg,transparent 24%,#ffffff00 39%,#ffffff54 48%,#dbeaff14 54%,transparent 64%);transform:translateX(var(--shine,-25%));transition:transform .55s ease-out}.glass-bevel{filter:drop-shadow(1px 0 1px #ffffff6b)}.glass-glint{position:absolute;width:35%;height:5px;background:linear-gradient(90deg,transparent,#fff,transparent);opacity:.3;transform:rotate(-68deg) scaleX(.5);filter:blur(.5px);transition:opacity .55s,transform .55s;pointer-events:none}.glass-glint:before{content:'';position:absolute;inset:-12px 40%;background:radial-gradient(ellipse,#f4faffc9,transparent 70%)}.glint-top{right:-12%;top:22%}.glint-bottom{right:-11%;bottom:17%}.glass-ground{position:absolute;left:-8%;top:97%;width:117%;height:15%;border-radius:50%;background:radial-gradient(ellipse,#3b79d736,transparent 66%);transform:scaleY(.35);opacity:.65;pointer-events:none;transition:transform .7s,opacity .7s}
.glass-stage.is-tracking .glass-pane{transform:translate3d(var(--glass-drift,0px),-14px,24px) rotateX(var(--glass-x,0deg)) rotateY(var(--glass-y,0deg)) scale(1.025);transition:transform .28s cubic-bezier(.2,.65,.3,1),filter .5s;filter:drop-shadow(12px 23px 17px #27528f33)}.glass-stage.is-tracking .glass-light{opacity:1}.glass-stage.is-tracking .glass-glint{opacity:.9;transform:rotate(-68deg) scaleX(1)}.glass-stage.is-tracking .glass-ground{opacity:.4;transform:translateX(var(--glass-drift,0px)) scale(1.12,.5)}.hero-inner{pointer-events:none}.hero-copy,.hero-scroll{pointer-events:auto}
/* Scroll position is the timeline: no timer, replay flag or easing lag. */
.glass-stage.is-scroll-driven .glass-pane{transform:translate3d(var(--glass-drift,0px),var(--glass-lift,0px),0) rotateX(var(--glass-x,0deg)) rotateY(var(--glass-y,0deg)) scale(var(--glass-scale,1));transition:none;filter:drop-shadow(9px 16px 12px #27528f28)}.glass-stage.is-scroll-driven .glass-light,.glass-stage.is-scroll-driven .glass-light:before,.glass-stage.is-scroll-driven .glass-glint,.glass-stage.is-scroll-driven .glass-ground{transition:none;animation:none}.glass-stage.is-scroll-driven .glass-light,.glass-stage.is-scroll-driven .glass-glint{opacity:var(--light-strength,.4)}.glass-stage.is-scroll-driven .glass-glint{transform:rotate(-68deg) scaleX(1)}
/* A second country follows the complete Australian homepage sequence. */
.canada-section{position:relative;padding:78px 0 60px;background:linear-gradient(130deg,#fafcff 4%,#f1f6ff 50%,#f5f2ff 100%);overflow:hidden}.canada-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:34px 7%;align-items:center}.canada-copy h2{font-size:clamp(30px,3.4vw,48px);line-height:1.35}.canada-copy h2>span{display:block;font-size:clamp(44px,5vw,67px);margin-bottom:10px}.canada-copy>p{font-size:17px;line-height:1.95;max-width:510px;margin:23px 0}.canada-visual{position:relative;align-self:stretch;min-height:310px;border-radius:24px 70px 24px 24px;overflow:hidden;box-shadow:0 22px 50px -30px #355ba160}.canada-visual>img{height:100%;min-height:310px;object-fit:cover}.canada-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(125deg,#d2e2ff16,#717bee25);pointer-events:none}.canada-glass{position:absolute;inset:10% 14% 10% 24%;border:2px solid #ffffffa3;border-radius:16px;transform:perspective(900px) rotateY(-13deg) rotateZ(-4deg);background:linear-gradient(120deg,#ffffff30,#ffffff03 55%,#d2dfff24);box-shadow:inset 2px 0 2px #fffc,4px 5px 7px #2249912e}.canada-services{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:8px}.canada-service{display:flex;align-items:center;gap:20px;background:#ffffffba;border:1px solid #e5eafa;border-radius:12px;padding:28px;transition:border-color .2s,transform .2s}.canada-service:hover{border-color:#b2c5fb;transform:translateY(-3px)}.canada-service h3{font-size:21px}.canada-service p{font-size:14px;line-height:1.9;margin-top:8px}.canada-service>.arrow{margin-left:auto;color:#647db0}.canada-contact{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:2px}.canada-contact p{font-size:15px}.canada-contact .button{flex-shrink:0}
.process-selector{display:grid;grid-template-columns:1fr 1fr;gap:36px}.process-selector h2{font-size:27px;margin-bottom:18px}.flow-links{display:flex;flex-direction:column;gap:10px}.flow-links>a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 22px;background:var(--wash);border:1px solid var(--line);border-radius:9px;font-size:16px;color:var(--ink)}.flow-links>a:hover{border-color:#b2c5fb;color:var(--blue)}.flow-country{padding-top:12px}.flow-country>.wrap>h2{font-size:29px;margin-bottom:24px}.flow-details{border:1px solid var(--line);border-radius:12px;margin-bottom:16px;scroll-margin-top:25px;overflow:hidden}.flow-details summary{cursor:pointer;display:flex;align-items:center;gap:20px;list-style:none;padding:24px 28px;background:#f7f9ff;font-size:22px;font-weight:600}.flow-details summary::-webkit-details-marker{display:none}.flow-details summary:after{content:'+';font-size:26px;font-weight:400;color:var(--blue)}.flow-details[open] summary:after{content:'−'}.flow-count{font-size:13px;color:var(--muted);font-weight:400;margin-left:auto}.flow-body{max-width:1000px;padding:28px;margin-inline:auto}.flow-intro{font-size:17px}.flow-steps{list-style:none;padding:0;margin:8px 0 0}.flow-steps>li{display:grid;grid-template-columns:56px 1fr;gap:24px;padding:27px 0;border-bottom:1px solid var(--line)}.flow-steps .step-number{margin:0}.flow-steps h3{font-size:23px;margin-bottom:12px}.flow-steps p{font-size:15px;line-height:1.95}.flow-steps .flow-output{font-size:14px;margin-top:11px;color:#45638e}.flow-actions{display:flex;gap:30px;flex-wrap:wrap;margin-top:28px}
@media(max-width:1240px){.official-logo{width:185px}.nav-shell{gap:16px}.nav-links{gap:16px}.nav-tools{gap:10px}.nav-cta{padding-inline:17px}}
@media(min-width:801px) and (max-width:1050px){.nav-shell{min-height:76px}.nav-links{display:none;position:absolute;left:0;right:0;top:76px;background:#fff;padding:20px 5%;box-shadow:0 15px 25px #2339780c}.nav-links.is-open{display:flex;flex-direction:column;align-items:stretch;gap:4px}.menu-button{display:block}.wordmark{margin-right:auto}}
@media(max-width:1050px){.country-heading{justify-content:space-between}.country-heading>a{font-size:15px;flex:1;padding:12px 5px}.country-toggle{width:44px;height:44px}.country-menu{position:static;box-shadow:none;border:0;border-left:2px solid #dee7ff;border-radius:0;margin:2px 0 10px 6px;padding:0 8px;background:#f8faff}.country-menu>a{white-space:normal;padding:13px 16px}.nav-country.is-current .country-heading:after{display:none}.nav-links{max-height:calc(100dvh - 76px);overflow:auto}.canada-layout{gap:28px 5%}.canada-copy>p{font-size:16px}.canada-service{padding:23px;gap:16px}.canada-service h3{font-size:19px}}
@media(max-width:800px){.canada-section{padding-block:48px}.canada-layout{grid-template-columns:1fr}.canada-copy>p{max-width:600px}.canada-copy h2{font-size:34px}.canada-copy h2>span{font-size:48px}.canada-visual{min-height:280px;height:340px}.canada-visual>img{min-height:0}.canada-services{gap:16px}.canada-service{padding:24px;align-items:flex-start}.canada-service .icon-disc{display:none}.canada-contact{align-items:flex-start}.process-selector{gap:24px}}
@media(max-width:600px){.official-logo{width:156px}.nav-shell{gap:8px}.site-footer .official-logo{width:220px}.canada-section{padding-block:38px}.canada-layout{gap:26px}.canada-copy h2{font-size:31px}.canada-copy h2>span{font-size:46px}.canada-copy>p{font-size:15px;margin-block:20px}.canada-visual{height:255px;min-height:255px;border-radius:16px 48px 16px 16px}.canada-services{grid-template-columns:1fr;margin:0}.canada-service h3{font-size:20px}.canada-contact{flex-direction:column;gap:20px}.canada-contact p{font-size:14px}.process-selector{grid-template-columns:1fr;padding-bottom:28px}.flow-country>.wrap>h2{font-size:27px}.flow-details summary{padding:19px;font-size:18px;gap:12px}.flow-count{font-size:11px}.flow-body{padding:20px}.flow-steps>li{grid-template-columns:40px 1fr;gap:15px;padding-block:24px}.flow-steps .step-number{width:38px;height:38px;font-size:16px}.flow-steps h3{font-size:20px}.flow-steps p{font-size:14px}.flow-intro{font-size:15px}}
@media(prefers-reduced-motion:reduce){.glass-pane,.glass-pane:before{animation:none!important;transition:none!important;transform:none}.glass-stage .glass-pane{transform:none!important;filter:none}.glass-stage .glass-light{opacity:.4}.glass-stage .glass-glint{opacity:.3}}

@media(max-width:360px){.official-logo{width:128px}.nav-shell{gap:6px}.canada-service{padding:20px}.flow-count{display:none}}

/* Mobile has a dedicated close-up below the copy, with no text over the art. */
@media(max-width:600px){
 .home-hero{display:flex;flex-direction:column;background:#f8fbff}
 .home-hero .hero-inner{order:0;min-height:0;display:block;padding-top:30px;padding-bottom:28px}
 .home-hero .hero-copy{width:100%}.home-hero .hero-intro{font-size:15px;line-height:1.9;margin-top:18px}
 .home-hero .hero-note{font-size:13px;letter-spacing:0;line-height:1.8;margin-top:22px;gap:12px;color:#52668b}.home-hero .hero-note:before{width:24px;flex-shrink:0}
 .home-hero .hero-scroll{display:none}
 .home-hero .hero-scene{position:relative;order:1;inset:auto;width:100%;height:clamp(390px,115vw,560px);flex-shrink:0;isolation:isolate}
 .home-hero .hero-scene:after{content:none}
 .home-hero .hero-canvas{width:308%;height:auto;aspect-ratio:1672/941;left:50%;top:50%;right:auto;bottom:auto;transform:translate(-73.5%,-55%)}
 .home-hero .glass-stage{left:54.8%;top:2%;width:33%;height:96%;perspective:1000px}
}
