/* AZSTAR Solutions — recognisable WhatsApp contact button v1.8 (staging).
   Existing imagery, animations, SEO and enquiry behaviour are preserved. */

body.az-otech {
    --navy: #071e39;
    --navy-deep: #050e21;
    --blue: #0870cf;
    --blue-dark: #0752a2;
    --gold: #ffb900;
    --text: #142641;
    --muted: #566982;
    --soft: #f2f7fc;
    --line: #dce7f1;
    --radius: 6px;
    background: #fff;
    color: var(--text);
    font-family: Manrope, Inter, system-ui, -apple-system, sans-serif;
    font-size: 15.5px;
    font-weight: 560;
    line-height: 1.7;
    overflow-x: clip;
}
body.az-otech h1, body.az-otech h2, body.az-otech h3,
body.az-otech .brand-text, body.az-otech .footer-brand strong {
    font-family: "Space Grotesk", Manrope, sans-serif;
    font-weight: 700;
}
body.az-otech .container { width: min(1280px, calc(100% - 64px)); }
body.az-otech .section { padding-block: clamp(54px, 5vw, 76px); }
body.az-otech .eyebrow {
    margin-bottom: 9px; font-size: 12px; font-weight: 800; letter-spacing: .17em;
    color: #085eb3; text-transform: uppercase;
}
body.az-otech .eyebrow-gold { color: var(--gold); }
body.az-otech .eyebrow:not(.eyebrow-gold)::before {
    content: "✦"; display: inline-block; margin-right: 8px;
    color: #d99b00; font-size: .9em;
}
body.az-otech .section-heading { max-width: 930px; margin-bottom: 29px; }
body.az-otech .section-heading h2,
body.az-otech .solutions-heading-row h2,
body.az-otech #about .az-about-intro h2,
body.az-otech #contact .az-contact-intro h2 {
    color: var(--navy); font-size: clamp(32px, 3.3vw, 46px);
    font-weight: 700; line-height: 1.09; letter-spacing: -.05em;
}
body.az-otech .section-heading p,
body.az-otech .solutions-heading-row p {
    color: #536982; font-size: 15.5px; font-weight: 560; line-height: 1.65;
}

/* Header and real, crawlable regional links. */
body.az-otech .site-header {
    background: rgba(255,255,255,.96); border-bottom: 1px solid #e4ecf3;
    box-shadow: 0 8px 32px rgba(5,28,62,.065); backdrop-filter: blur(16px);
}
body.az-otech .header-inner { min-height: 76px; gap: 20px; }
body.az-otech .brand img { width: 171px; }
body.az-otech .brand-text { font-size: 26px; font-weight: 700; letter-spacing: -.055em; }
body.az-otech .main-nav { gap: clamp(12px, 1.5vw, 22px); }
body.az-otech .main-nav a { position: relative; font-size: 13.7px; font-weight: 800; color: #203956; }
body.az-otech .main-nav a::after {
    content: ""; position: absolute; left: 0; right: 100%; bottom: -7px; height: 2px;
    background: var(--gold); transition: right .24s ease;
}
body.az-otech .main-nav a:hover::after,
body.az-otech .main-nav a:focus-visible::after { right: 0; }
body.az-otech .button { border-radius: 6px; font-size: 13.7px; font-weight: 800; padding: 11px 19px; }
body.az-otech .button-primary {
    color: #fff; background: linear-gradient(120deg, #117fdf, #0759b5);
    box-shadow: inset 0 -3px 0 rgba(255,185,0,.95), 0 12px 23px rgba(5,88,182,.17);
}
body.az-otech .button-primary:hover { background: linear-gradient(120deg, #096dc9, #064b99); box-shadow: inset 0 -3px 0 var(--gold), 0 15px 27px rgba(5,88,182,.24); }
body.az-otech .az-region-nav { background: #eff7fb; border-color: #d8ebf4; }
body.az-otech .az-region-links { gap: 8px; padding-block: 6px; }
body.az-otech .az-region-links a {
    display: inline-flex; align-items: center; padding: 5px 11px;
    border: 1px solid transparent; border-radius: 5px; text-decoration: none;
    font-size: 12px; font-weight: 800; line-height: 1.25; color: #2d5878;
    transition: background-color .2s, color .2s, border-color .2s;
}
body.az-otech .az-region-links a:hover { background: #dbeef8; }
body.az-otech .az-region-links a[aria-current="page"] { color: #0755a8; background: #fff; border-color: #ffd779; box-shadow: 0 3px 9px rgba(0,58,103,.06); }

/* Restore the original AZSTAR office/network photograph as the hero focus.
   A very gentle background drift adds life without distracting from the content. */
body.az-otech .hero {
    min-height: 0; background: #06132c; isolation: isolate;
    border-bottom: 1px solid rgba(69,211,244,.25);
}
body.az-otech .hero-bg {
    opacity: 1;
    filter: saturate(1.25) contrast(1.08) brightness(1.12);
    transform-origin: 70% 48%;
    animation: az-banner-drift 28s ease-in-out infinite alternate;
}
@keyframes az-banner-drift {
    from { transform: scale(1.015) translate3d(0, 0, 0); }
    to { transform: scale(1.055) translate3d(-.6%, 0, 0); }
}
body.az-otech .hero::before {
    background:
        radial-gradient(ellipse at 83% 23%, rgba(10,133,246,.24), transparent 42%),
        radial-gradient(ellipse at 24% 92%, rgba(12,120,225,.22), transparent 55%),
        linear-gradient(92deg, rgba(3,15,35,.94), rgba(4,26,56,.73) 49%, rgba(4,29,64,.30));
}
body.az-otech .hero-grid {
    grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr);
    gap: clamp(25px, 3.1vw, 55px); padding-block: clamp(43px, 4.5vw, 61px);
}
body.az-otech .hero-copy { z-index: 2; }
body.az-otech .hero .eyebrow { color: #ffd052; font-size: 12px; letter-spacing: .14em; }
body.az-otech .hero h1 {
    max-width: 760px; margin: 7px 0 17px; color: #f5faff;
    font-size: clamp(39px, 4.15vw, 60px); font-weight: 700;
    line-height: 1.055; letter-spacing: -.056em; text-wrap: balance;
}
body.az-otech .hero-highlight { color: #7ac6ff; }
body.az-otech .hero-lead { max-width: 620px; color: #eff6ff; font-size: clamp(17px, 1.55vw, 20px); font-weight: 700; line-height: 1.42; }
body.az-otech .hero-description { max-width: 600px; margin-top: 10px; color: #bacbe2; font-size: 14.5px; font-weight: 550; line-height: 1.65; }
body.az-otech .hero-description.az-region-coverage { color: #b2ddff; font-size: 12px; font-weight: 700; }
body.az-otech .hero-actions { gap: 11px; margin-top: 20px; }
body.az-otech .hero-actions .button { min-height: 47px; }
body.az-otech .button-outline-light { border-color: rgba(205,235,255,.42); color: #fff; }
body.az-otech .button-outline-light:hover { border-color: #ffd052; background: rgba(9,125,229,.16); }
body.az-otech .hero-aside {
    position: relative; z-index: 1; overflow: hidden; min-width: 0;
    max-width: 435px; width: 100%; margin-left: auto; padding: 23px;
    background: linear-gradient(143deg, rgba(8,102,194,.96), rgba(7,74,147,.95) 58%, rgba(4,35,84,.97));
    border: 1px solid rgba(130,195,255,.68); border-radius: 6px;
    box-shadow: 0 28px 70px rgba(0,10,43,.35), 0 0 0 1px rgba(44,188,240,.10);
    backdrop-filter: blur(8px);
}
body.az-otech .hero-aside::before {
    content: ""; position: absolute; inset: 0 0 auto; height: 5px; pointer-events: none;
    background: linear-gradient(90deg, #1179d9, #ffb900 49%, #1179d9 100%);
}
body.az-otech .hero-aside::after {
    content: ""; position: absolute; top: -95px; right: -90px; width: 260px; height: 260px;
    background: radial-gradient(circle, rgba(129,240,255,.19), transparent 67%);
    pointer-events: none;
}
body.az-otech .az-hero-panel-welcome { display: flex; align-items: center; gap: 11px; position: relative; z-index: 1; }
body.az-otech .az-hero-panel-star {
    display: grid; place-items: center; width: 30px; height: 30px; flex: 0 0 30px;
    background: var(--gold); color: #092b4d; border-radius: 5px;
    box-shadow: 0 6px 20px rgba(0,22,64,.19);
}
body.az-otech .az-hero-panel-star svg { width: 17px; height: 17px; }
body.az-otech .hero-aside-label { display: block; margin: 0; color: #ddfaff; font-size: 12px; font-weight: 800; letter-spacing: .11em; }
body.az-otech .hero-aside h2 {
    position: relative; z-index: 1; max-width: 390px; margin: 15px 0 8px;
    color: #fff; font-size: clamp(25px,2.35vw,31px); font-weight: 800;
    line-height: 1.13; letter-spacing: -.04em;
}
body.az-otech .az-hero-panel-intro { position: relative; z-index: 1; color: #dff9ff; font-size: 13.8px; font-weight: 650; }
body.az-otech .az-hero-panel-services-heading {
    margin: 17px 0 8px; font-size: 10px; font-weight: 850; letter-spacing: .14em;
    color: #ffd15d;
}
body.az-otech .hero-tags { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; }
body.az-otech .hero-tags span {
    display: flex; align-items: center; min-width: 0; min-height: 40px; padding: 7px 8px;
    background: rgba(255,255,255,.12); border: 1px solid rgba(210,248,255,.26);
    border-radius: 5px; white-space: normal;
    color: #fff; font-size: 11px; font-weight: 800; line-height: 1.32;
    transition: background-color .65s ease, border-color .65s ease, transform .65s ease;
}
body.az-otech .hero-tags svg { flex: 0 0 15px; width: 15px; height: 15px; color: #b8dcff; }
body.az-otech .hero-tags span:hover { transform: translateY(-2px); background: rgba(255,255,255,.21); border-color: rgba(210,248,255,.56); }
body.az-otech .az-hero-panel-footer { position: relative; z-index: 1; margin-top: 15px; padding-top: 12px; border-top: 1px solid rgba(213,246,255,.28); }
body.az-otech .az-hero-panel-footer > span { display: block; color: #d2efff; font-size: 11px; font-weight: 700; }
body.az-otech .az-hero-panel-link {
    display: inline-flex; justify-content: space-between; align-items: center; gap: 18px;
    min-height: 39px; margin-top: 10px; padding: 8px 13px; border-radius: 5px;
    background: var(--gold); color: #093054; font-size: 12.5px; font-weight: 850;
    text-decoration: none; box-shadow: 0 10px 22px rgba(0,24,65,.15);
    transition: background-color .5s ease, transform .5s ease, box-shadow .5s ease;
}
body.az-otech .az-hero-panel-link:hover { background: #ffdb83; color: #082e5a; transform: translateY(-2px); box-shadow: 0 15px 27px rgba(0,24,65,.22); }

/* Tighter image-first cards with preserved hover interactions and legible type. */
body.az-otech .solutions-section { background: #f2f7fc; }
body.az-otech .solutions-heading-row { grid-template-columns: 1.3fr .85fr auto; gap: 20px; margin-bottom: 25px; }
body.az-otech .solutions-heading-row h2 { font-size: clamp(31px, 3.2vw, 45px); }
body.az-otech .solutions-heading-row p { font-size: 15px; }
body.az-otech .solutions-all { min-height: 42px; font-size: 12.5px; }
body.az-otech .solution-cards { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 17px; }
body.az-otech .solution-card,
body.az-otech .industry-card,
body.az-otech .project-card,
body.az-otech #why-azstar .why-card,
body.az-otech #about .az-about-panel,
body.az-otech #about .az-about-step {
    border-radius: 6px;
    transition: transform .26s ease-out, box-shadow .28s ease-out, border-color .26s ease-out, background-color .28s ease-out;
}
body.az-otech .solution-card { box-shadow: 0 8px 26px rgba(8,36,78,.05); border-color: #dbe8f5; }
body.az-otech .solution-card:hover,
body.az-otech .industry-card:hover,
body.az-otech .project-card:hover { transform: translateY(-4px); border-color: #e6bd5d; box-shadow: 0 17px 34px rgba(7,36,75,.13); }
body.az-otech .solution-photo { height: 155px; }
body.az-otech .solution-photo img,
body.az-otech .industry-photo img,
body.az-otech .project-photo img { transition: transform .42s ease-out, filter .42s ease; }
body.az-otech .solution-card:hover img,
body.az-otech .industry-card:hover img,
body.az-otech .project-card:hover img { transform: scale(1.045); filter: saturate(1.06); }
body.az-otech .solution-icon { width: 38px; height: 38px; margin: -19px 0 0 19px; border-radius: 6px; color: var(--blue); }
body.az-otech .solution-icon svg { width: 19px; height: 19px; }
body.az-otech .solution-body { padding: 14px 19px 20px; }
body.az-otech .solution-body h3 { margin-bottom: 7px; font-size: 19px; font-weight: 700; line-height: 1.23; }
body.az-otech .solution-body p { font-size: 14px; font-weight: 550; line-height: 1.65; }
body.az-otech .service-directory { margin-top: 21px; border-radius: 6px; background: #fff; }
body.az-otech .service-directory summary { padding: 15px 6px; font-size: 14px; font-weight: 800; }
body.az-otech .service-item { padding-block: 10px; font-size: 13.5px; font-weight: 650; }

body.az-otech .industries-grid { width: min(1030px, 100%); margin-inline: auto; gap: 15px; }
body.az-otech .industry-card {
    flex-basis: calc((100% - 30px)/3); display: flex; flex-direction: column;
    min-height: 0; box-shadow: 0 8px 24px rgba(7,39,86,.045);
}
body.az-otech .industry-card::before { height: 0; }
body.az-otech .industry-photo { flex: 0 0 auto; height: 108px; min-height: 0; }
body.az-otech .industry-content { padding: 15px; }
body.az-otech .industry-content h3 { margin-bottom: 7px; font-size: 17.5px; font-weight: 700; line-height: 1.22; }
body.az-otech .industry-content p { font-size: 13.5px; font-weight: 550; line-height: 1.6; }

body.az-otech .projects-section { background: #edf5fb; }
body.az-otech .project-photo { aspect-ratio: 16 / 8.5; }
body.az-otech .project-content { padding: 20px; }
body.az-otech .project-category { color: #0a76bd; font-weight: 800; }
body.az-otech .project-content h3 { font-size: 21px; font-weight: 700; }
body.az-otech .project-content p { font-size: 14px; font-weight: 550; }
body.az-otech .project-readmore { font-size: 13px; }

body.az-otech .why-section {
    /* Illustrative corporate consultation and network/server engineering photo.
       The layered veil protects the contrast of headings and service cards. */
    background-color: #07182e;
    background-image:
        linear-gradient(180deg, rgba(5,18,37,.52) 0%, rgba(5,21,45,.70) 54%, rgba(5,18,39,.90) 100%),
        linear-gradient(90deg, rgba(5,16,37,.82) 0%, rgba(7,25,52,.51) 55%, rgba(4,20,43,.26) 100%),
        url('../images/why/azstar-corporate-consulting-servers.webp');
    background-position: center, center, center 42%;
    background-size: cover;
    background-repeat: no-repeat;
}
body.az-otech #why-azstar .section-heading h2 { color: #f6fbff; font-size: clamp(32px,3.3vw,46px); }
body.az-otech #why-azstar .section-heading p { color: #c2d2e7; }
body.az-otech #why-azstar .why-grid { gap: 16px; }
body.az-otech #why-azstar .why-card {
    min-height: 195px; padding: 23px;
    background: rgba(8,29,57,.84); border-color: rgba(164,212,245,.27);
    box-shadow: 0 14px 33px rgba(0,9,30,.20); backdrop-filter: blur(8px);
}
body.az-otech #why-azstar .why-card:hover { transform: translateY(-4px); background: rgba(12,46,85,.91); border-color: rgba(255,185,0,.55); }
body.az-otech #why-azstar .why-icon { width: 38px; height: 38px; margin-bottom: 12px; border-radius: 6px; color: #8cc8ff; }
body.az-otech #why-azstar .why-card:nth-child(2) .why-icon,
body.az-otech #why-azstar .why-card:nth-child(4) .why-icon,
body.az-otech #why-azstar .why-card:nth-child(6) .why-icon { color: var(--gold); border-color: rgba(255,185,0,.38); background: rgba(255,185,0,.12); }
body.az-otech #why-azstar .why-card h3 { margin-bottom: 7px; color: #fff; font-size: 20px; font-weight: 700; }
body.az-otech #why-azstar .why-card p { color: #c8d7e9; font-size: 14px; font-weight: 550; line-height: 1.6; }

body.az-otech #about.about-section { background: linear-gradient(135deg, #fff, #f2f8fc); }
body.az-otech #about .az-about-intro h2 { max-width: 610px; }
body.az-otech #about .az-about-summary { color: #566d85; font-size: 15.5px; font-weight: 550; }
body.az-otech #about .az-about-promise { background: #edf6fd; border-left-color: var(--gold); border-radius: 0 8px 8px 0; }
body.az-otech #about .az-about-promise strong { font-size: 17px; font-weight: 800; }
body.az-otech #about .az-about-panel { border-color: #daebf4; box-shadow: 0 21px 55px rgba(4,38,76,.08); }
body.az-otech #about .az-about-panel::before { background: #17afd7; }
body.az-otech #about .az-about-panel-label { color: #0a78b7; font-size: 12px; }
body.az-otech #about .az-about-copy { color: #455f79; font-size: 15px; font-weight: 550; }
body.az-otech #about .az-about-step { padding: 20px; box-shadow: 0 9px 25px rgba(15,49,92,.045); }
body.az-otech #about .az-about-step:hover { transform: translateY(-3px); border-color: #a3d8e9; }
body.az-otech #about .az-about-step-num { color: #0b86c9; font-size: 15px; }
body.az-otech #about .az-about-step h3 { font-size: 19px; font-weight: 700; }
body.az-otech #about .az-about-step p { font-size: 14px; font-weight: 550; }

body.az-otech #contact.contact-section--form {
    border-top: 3px solid var(--gold);
    background: radial-gradient(ellipse at 5% 85%, rgba(13,122,219,.16), transparent 43%),
                linear-gradient(120deg, #071329, #112e5e);
}
body.az-otech #contact .az-contact-intro h2 { color: #fff; font-size: clamp(33px, 3.3vw, 47px); }
body.az-otech #contact .az-contact-intro > p { color: #c6d8ec; font-size: 15.5px; font-weight: 550; }
body.az-otech #contact .az-contact-points div { color: #eaf5ff; font-size: 14.5px; font-weight: 600; }
body.az-otech #contact .az-contact-points span { color: #ffd05a; }
/* WhatsApp action: branded green and recognisable in the dark contact section. */
body.az-otech #contact .az-contact-links .az-whatsapp-button {
    display: inline-flex; align-items: center; justify-content: center; gap: 9px;
    background: #168b50; color: #fff; border: 1px solid #28ae68;
    box-shadow: 0 9px 22px rgba(3, 71, 40, .21);
    transition: background-color .25s ease, box-shadow .25s ease, transform .25s ease;
}
body.az-otech #contact .az-contact-links .az-whatsapp-button:hover,
body.az-otech #contact .az-contact-links .az-whatsapp-button:focus-visible {
    background: #0d7541; border-color: #38c678;
    transform: translateY(-2px); box-shadow: 0 13px 25px rgba(3, 71, 40, .30);
}
body.az-otech #contact .az-whatsapp-button .az-whatsapp-icon {
    display: block; flex: 0 0 21px; width: 21px; height: 21px;
    fill: none; stroke: currentColor; stroke-width: 1.7;
    stroke-linecap: round; stroke-linejoin: round;
}
body.az-otech #contact .az-enquiry-card { border-color: #bdd9eb; border-top: 3px solid var(--gold); border-radius: 6px; padding: clamp(23px,2.8vw,36px); }
body.az-otech #contact .az-form-heading h3 { font-size: 25px; font-weight: 700; }
body.az-otech #contact .az-form-heading p { font-size: 13.5px; }
body.az-otech #contact .az-field label { font-size: 13.5px; font-weight: 800; }
body.az-otech #contact .az-field input,
body.az-otech #contact .az-field select,
body.az-otech #contact .az-field textarea {
    min-height: 44px; border-radius: 5px; background: #f9fcff;
    font-size: 14.5px; font-weight: 550;
}
body.az-otech #contact .az-field textarea { min-height: 105px; }
body.az-otech #contact .az-form-submit { font-size: 15px; }
body.az-otech .site-footer { background: #050e21; border-top: 3px solid var(--gold); padding-top: 39px; }
body.az-otech .footer-brand .az-footer-logo {
    display: inline-flex; align-items: center; justify-content: center;
    max-width: 100%; padding: 8px 12px; background: #fff;
    border: 1px solid rgba(255,255,255,.2); border-radius: 5px;
    transition: box-shadow .25s ease;
}
body.az-otech .footer-brand .az-footer-logo:hover { box-shadow: 0 0 0 3px rgba(255,185,0,.45); }
body.az-otech .az-footer-logo img { display: block; width: 220px; max-width: 100%; height: auto; max-height: 82px; object-fit: contain; }
body.az-otech .az-footer-logo-fallback { color: #071e39; font-size: 22px; font-weight: 800; }
body.az-otech .footer-grid h2 { font-size: 17px; font-weight: 700; }
body.az-otech .footer-grid h2::after { content: ""; display: block; width: 30px; height: 2px; margin-top: 6px; background: var(--gold); }
body.az-otech .footer-grid a, body.az-otech .footer-grid p { font-size: 14px; font-weight: 600; }
body.az-otech .footer-grid a:not(.az-footer-logo):hover { color: #ffd15d; }

/* Preserve the 1.35s text reveal, but never override fast card hover motion.
   Stagger delay applies ONLY to opacity/translate, not hover transitions. */
body.az-otech.az-motion-ready [data-az-reveal] {
    transition: opacity 1.35s cubic-bezier(.2,.8,.2,1), translate 1.35s cubic-bezier(.2,.8,.2,1),
                transform .26s ease-out, box-shadow .28s ease-out, border-color .26s ease-out, background-color .28s ease-out;
    transition-delay: var(--az-reveal-delay, 0ms), var(--az-reveal-delay, 0ms), 0ms, 0ms, 0ms, 0ms;
}
body.az-otech.az-motion-ready [data-az-reveal]:not(.is-visible) {
    opacity: 0; translate: var(--az-reveal-x,0px) 22px;
}
body.az-otech.az-motion-ready [data-az-reveal].is-visible { opacity: 1; translate: 0 0; }

@media (max-width: 1180px) {
    body.az-otech .solutions-heading-row { grid-template-columns: 1fr auto; }
    body.az-otech .solutions-heading-row > p { grid-column: 1; grid-row: 2; }
    body.az-otech .solutions-all { grid-column: 2; grid-row: 1 / span 2; }
}
@media (max-width: 1000px) {
    body.az-otech .hero-grid { grid-template-columns: 1fr; gap: 28px; }
    body.az-otech .hero-aside { max-width: 520px; margin-inline: auto; width: 100%; }
    body.az-otech .solution-cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
    body.az-otech .industry-card { flex-basis: calc((100% - 15px)/2); }
}
@media (max-width: 700px) {
    body.az-otech .container { width: calc(100% - 38px); }
    body.az-otech .section { padding-block: 50px; }
    body.az-otech .header-inner { min-height: 68px; }
    body.az-otech .brand img { width: 155px; }
    body.az-otech .hero-grid { padding-block: 51px 46px; }
    body.az-otech .hero h1 { font-size: clamp(34px, 7.2vw, 46px); }
    body.az-otech .hero-lead { font-size: 17px; }
    body.az-otech .why-section {
        background-size: cover, cover, auto 710px;
        background-position: center, center, 63% top;
    }
    body.az-otech #why-azstar .why-card { min-height: 0; padding: 20px; background: rgba(8,29,57,.92); }
    body.az-otech .solutions-heading-row { grid-template-columns: 1fr; }
    body.az-otech .solutions-heading-row > p, body.az-otech .solutions-all { grid-column: 1; grid-row: auto; }
    body.az-otech .solutions-all { justify-self: start; }
    body.az-otech .solution-cards { grid-template-columns: 1fr; }
    body.az-otech .solution-photo { height: clamp(150px, 38vw, 215px); }
    body.az-otech .industry-card { flex-basis: 100%; }
    body.az-otech .industry-photo { height: 145px; }
    body.az-otech .section-heading h2,
    body.az-otech .solutions-heading-row h2,
    body.az-otech #about .az-about-intro h2,
    body.az-otech #contact .az-contact-intro h2,
    body.az-otech #why-azstar .section-heading h2 { font-size: clamp(31px, 7.2vw, 40px); }
    body.az-otech .az-region-links { justify-content: center; }
}
@media (max-width: 430px) {
    body.az-otech .container { width: calc(100% - 28px); }
    body.az-otech .hero-aside { padding: 19px 15px; }
    body.az-otech .hero-tags { grid-template-columns: repeat(2,minmax(0,1fr)); }
    body.az-otech .hero-tags span { min-height: 47px; padding: 6px; font-size: 10px; }
    body.az-otech .hero-tags svg { width: 14px; height: 14px; flex-basis: 14px; }
    body.az-otech .az-hero-panel-link { width: 100%; }
    body.az-otech .hero-actions { align-items: stretch; }
    body.az-otech .hero-actions .button { width: 100%; }
    body.az-otech .az-region-links a { font-size: 11px; padding: 6px 7px; }
}
@media (max-width: 340px) {
    body.az-otech .hero-tags { grid-template-columns: 1fr; }
    body.az-otech .hero-tags span { min-height: 35px; }
}
/* Short laptop displays: keep the two-column hero comfortably inside the fold. */
@media (min-width: 1001px) and (max-height: 850px) {
    body.az-otech .hero-grid { padding-block: 31px; }
    body.az-otech .hero h1 { font-size: clamp(38px, 3.65vw, 52px); }
    body.az-otech .hero-aside { padding: 20px; }
    body.az-otech .hero-aside h2 { font-size: clamp(23px, 2.15vw, 29px); }
    body.az-otech .hero-tags span { min-height: 37px; }
}
@media (prefers-reduced-motion: reduce) {
    body.az-otech #contact .az-contact-links .az-whatsapp-button { transition: none; }
    body.az-otech #contact .az-contact-links .az-whatsapp-button:hover { transform: none; }
    body.az-otech .hero-bg { animation: none !important; transform: none !important; }
    body.az-otech .solution-card,
    body.az-otech .industry-card,
    body.az-otech .project-card,
    body.az-otech [data-az-reveal] { transition: none !important; transform: none !important; translate: none !important; opacity: 1 !important; }
}
