
:root{--navy:#091a33;--navy2:#112b4e;--blue:#216be0;
--cyan:#50c9e9;--ink:#18283f;--muted:#607086;--line:#dfe8f3;
--paper:#f5f8fc}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:#fff;
font:16px/1.7 "Segoe UI",Arial,sans-serif}
a{color:inherit;text-decoration:none}
button{font:inherit}
.wrap{width:min(1190px,calc(100% - 52px));margin:auto}
.skip{position:absolute;top:-100px;left:15px;z-index:1000;
background:white;padding:12px}
.skip:focus{top:12px}
:focus-visible{outline:3px solid #35a4df;outline-offset:4px}
.site-header{position:sticky;top:0;z-index:100;
background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}
.header-inner{min-height:86px;display:flex;align-items:center;
justify-content:space-between;gap:28px}
.brand img{display:block;width:175px;height:auto}
.site-nav{display:flex;align-items:center;gap:23px}
.site-nav a{font-size:13px;font-weight:650;color:#465772}
.site-nav a:hover,.site-nav a[aria-current]{color:var(--blue)}
.site-nav .nav-contact{background:var(--blue);color:white;
padding:11px 19px;border-radius:8px}
.menu-toggle{display:none;background:transparent;border:0;padding:10px}
.menu-toggle span{display:block;width:26px;height:3px;
margin:5px 0;background:var(--navy);border-radius:2px}
h1,h2,h3{line-height:1.16;letter-spacing:-.7px}
h2{font-size:clamp(27px,3vw,40px)}
p{margin-top:0}
.eyebrow{display:inline-block;font-size:11px;font-weight:800;
letter-spacing:2px;color:#2477b9}
.home-hero{background:linear-gradient(115deg,#08172d,#12365d);
color:#fff;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;
align-items:center;gap:60px;padding:85px 0}
.hero-chip{display:inline-flex;align-items:center;gap:11px;
border:1px solid #476686;background:#203b5a;padding:9px 14px;
border-radius:40px;color:#c9e5f6;font-size:10px;letter-spacing:1.5px;font-weight:800}
.chip-dot{width:7px;height:7px;border-radius:50%;background:#5de0bd}
.hero-copy h1{font-size:clamp(38px,4.3vw,63px);
letter-spacing:-2px;margin:24px 0}
.hero-copy h1 span{display:block;color:#6ed4ee}
.hero-copy>p{color:#c6d7eb;font-size:17px;max-width:560px}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin:32px 0}
.button{display:inline-flex;align-items:center;justify-content:center;
padding:14px 22px;border-radius:9px;font-size:13px;
font-weight:800;line-height:1.5;min-height:48px;text-align:center}
.button-primary{background:var(--blue);color:#fff}
.button-primary:hover{background:#1658bb}
.button-outline{border:1px solid #7795b6;color:#fff}
.hero-foot{display:flex;gap:15px;align-items:center;
border-top:1px solid #365477;padding-top:20px;color:#b3cbe4;font-size:13px}
.hero-foot strong{font-size:19px;color:white;letter-spacing:1px}
.hero-media{min-width:0}
.hero-media img{display:block;width:100%;height:auto;aspect-ratio:16/10;
object-fit:cover;border-radius:14px;box-shadow:0 35px 70px #0006}
.media-caption{display:flex;align-items:center;gap:12px;margin-top:16px;
font-size:11px;color:#a8c5df;letter-spacing:.6px}
.caption-line{width:30px;height:1px;background:#66cceb}
.intro-bar{background:#f0f5fb;border-bottom:1px solid var(--line)}
.intro-inner{display:flex;gap:30px;flex-wrap:wrap;justify-content:space-between;
padding:21px 0;color:#6b7e92;font-size:12px}
.intro-inner strong{color:#23466b}
.section{padding:85px 0}
.section-tint{background:var(--paper)}
.section-heading{max-width:740px;margin:0 auto 44px;text-align:center}
.section-heading h2{margin:13px 0}
.section-heading p{color:var(--muted)}
.three-grid,.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.two-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.info-card{padding:34px;background:#fff;border:1px solid var(--line);
border-radius:14px;box-shadow:0 10px 30px #122b4b09}
.info-card h3{font-size:21px;margin:17px 0 11px}
.info-card p{color:var(--muted);font-size:14px}
.card-icon{font-size:25px;color:var(--blue);font-weight:800}
.text-link{display:inline-block;color:var(--blue);font-size:13px;font-weight:800;margin-top:10px}
.contact-ribbon{background:#eaf2fc;padding:45px 0}
.ribbon-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}
.ribbon-inner h2{margin:8px 0}
.ribbon-inner p{color:var(--muted)}
.page-hero{background:linear-gradient(115deg,#08172d,#153963);color:white;padding:75px 0}
.page-hero .eyebrow{color:#70d4ec}
.page-hero h1{font-size:clamp(36px,4vw,55px);margin:16px 0;max-width:820px}
.page-hero p{color:#c8d8eb;max-width:720px;font-size:17px}
.plan-card{position:relative;background:white;border:1px solid var(--line);
border-radius:16px;padding:35px 28px;display:flex;flex-direction:column}
.plan-card.featured{border:2px solid var(--blue);box-shadow:0 20px 40px #164c9b15}
.plan-badge{position:absolute;right:24px;top:-14px;background:var(--blue);
color:#fff;border-radius:20px;padding:6px 13px;font-size:10px;font-weight:800}
.plan-name{color:var(--blue);font-weight:800;font-size:11px;letter-spacing:1.5px}
.plan-card h3{font-size:24px;margin:16px 0 10px}
.plan-desc{color:var(--muted);font-size:14px;min-height:53px}
.plan-price{font-size:45px;font-weight:850;letter-spacing:-2px;margin:12px 0 0}
.plan-price span{font-size:13px;color:var(--muted);font-weight:400;letter-spacing:0}
.price-note{font-size:11px;color:var(--muted)}
.plan-card ul{flex:1;padding-left:20px;color:#50617a;font-size:14px;margin:23px 0 30px}
.plan-card li{padding:6px 0}
.button-plan{border:1px solid var(--blue);color:var(--blue)}
.fine-print{max-width:880px;margin:32px auto 0;text-align:center;color:var(--muted);font-size:12px}
.steps{max-width:850px}
.step{display:grid;grid-template-columns:95px 1fr;gap:25px;
padding:36px 0;border-bottom:1px solid var(--line)}
.step-number{font-size:42px;font-weight:850;color:var(--blue)}
.step h2{margin:0 0 12px}
.step p{color:var(--muted)}
.story-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:75px;align-items:center}
.story-grid p{color:var(--muted)}
.story-panel{border-radius:16px;background:var(--navy);color:white;padding:44px}
.story-panel>span{font-size:11px;letter-spacing:2px;color:#8ccdec}
.story-panel strong{display:block;font-size:105px;letter-spacing:-6px;line-height:1.2}
.story-rule{height:1px;background:#385373;margin:15px 0 27px}
.story-panel h3{font-size:25px}
.story-panel p{color:#b7c9dd}
.editorial{padding:25px 25px 25px 0}
.editorial p{color:var(--muted)}
.faq-wrap{max-width:870px}
.faq-item{border-bottom:1px solid var(--line);padding:24px 0}
.faq-item summary{font-weight:750;cursor:pointer}
.faq-item p{color:var(--muted);margin:15px 0 0}
.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:75px}
.contact-detail>p{color:var(--muted)}
.contact-method{border-top:1px solid var(--line);padding:20px 0;display:flex;flex-direction:column}
.contact-method span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}
.contact-method a{color:var(--blue);font-weight:700}
.enquiry-panel{background:var(--paper);border:1px solid var(--line);
border-radius:16px;padding:38px;align-self:start}
.enquiry-panel p{color:var(--muted)}
.enquiry-panel small{display:block;margin-top:17px;color:var(--muted)}
.footer{background:#07172d;color:#adbed1;padding:65px 0 25px}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:42px}
.footer-brand img{display:block;background:#fff;padding:7px;border-radius:7px;
width:172px;height:auto}
.footer-brand p{font-size:13px;max-width:275px;margin-top:19px}
.footer-col{display:flex;flex-direction:column;gap:12px}
.footer-col h3{font-size:14px;color:white;margin:0 0 9px}
.footer-col a{font-size:12px;overflow-wrap:anywhere}
.footer-col a:hover{color:white}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;
border-top:1px solid #283c56;padding-top:22px;margin-top:55px;font-size:12px}
@media(max-width:1020px){
 .site-nav{gap:11px}
 .site-nav a{font-size:12px}
 .hero-grid{gap:30px}
 .footer-grid{gap:22px}
}
@media(max-width:820px){
 .header-inner{min-height:75px}
 .brand img{width:155px}
 .menu-toggle{display:block;cursor:pointer}
 .site-nav{display:none;position:absolute;top:100%;left:0;width:100%;
 background:white;border-bottom:1px solid var(--line);padding:20px 26px;
 flex-direction:column;align-items:stretch;gap:4px}
 .site-nav.open{display:flex}
 .site-nav a{font-size:14px;padding:10px}
 .site-nav .nav-contact{text-align:center;margin-top:7px}
 .hero-grid,.story-grid,.contact-grid{grid-template-columns:1fr}
 .hero-grid{padding:55px 0}
 .hero-media img{aspect-ratio:16/9}
 .three-grid,.plan-grid{grid-template-columns:1fr}
 .two-grid{grid-template-columns:1fr}
 .plan-desc{min-height:0}
 .footer-grid{grid-template-columns:repeat(2,1fr)}
 .ribbon-inner{flex-direction:column;align-items:start}
}
@media(max-width:520px){
 .wrap{width:calc(100% - 34px)}
 .hero-copy h1{letter-spacing:-1px}
 .actions{flex-direction:column}
 .actions .button{width:100%}
 .section{padding:62px 0}
 .page-hero{padding:55px 0}
 .story-panel strong{font-size:76px}
 .step{grid-template-columns:56px 1fr;gap:14px}
 .step-number{font-size:30px}
 .footer-grid{grid-template-columns:1fr 1fr;gap:30px 18px}
 .footer-bottom{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* WORLDHOSTESS V3.1 — COMPLETE VISUAL REFINEMENT */
body{font-size:17px;line-height:1.75}
.site-nav a{font-size:14px}
.brand img{width:185px}
.hero-copy>p,.page-hero p{font-size:18px;line-height:1.75}
.hero-copy h1{font-size:clamp(37px,4.1vw,59px)}
.section-heading p,.v31-heading p{font-size:17px}
.info-card p,.plan-desc,.step p,.story-grid p,
.editorial p,.contact-detail>p,.faq-item p{font-size:16px}
.footer-col a,.footer-brand p{font-size:14px}
.footer-col h3{font-size:16px}
.button{font-size:14px}
.v31-section{position:relative}
.v31-heading{max-width:780px;margin:0 auto 44px;text-align:center}
.v31-heading h2{margin:12px 0 16px;
 font-size:clamp(28px,3vw,42px)}
.v31-heading p{color:var(--muted)}
.v31-grid{display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.v31-tile{position:relative;background:white;
 border:1px solid var(--line);border-radius:15px;
 padding:32px;box-shadow:0 16px 34px #10284b0b}
.v31-number{display:block;font-size:28px;
 font-weight:850;color:var(--blue);margin-bottom:16px}
.v31-tile h3{font-size:23px;margin:0 0 13px}
.v31-tile p{font-size:16px;color:var(--muted);
 line-height:1.75}
.v31-status{display:inline-block;font-size:10px;
 font-weight:800;letter-spacing:1.2px;color:#206aa8;
 background:#e9f2fc;padding:6px 10px;
 border-radius:40px;margin-bottom:12px}
.v31-linkband{padding:60px 0;
 background:linear-gradient(120deg,#0b213e,#16416a);
 color:white}
.v31-linkband-inner{display:flex;align-items:center;
 justify-content:space-between;gap:36px}
.v31-linkband h2{margin:0 0 10px;
 font-size:clamp(26px,3vw,36px)}
.v31-linkband p{margin:0;max-width:650px;
 color:#c8d9e9;font-size:17px}
.v31-linkband .button{flex-shrink:0}
.v31-roadmap{display:grid;grid-template-columns:repeat(3,1fr);
 gap:18px}
.v31-roadmap article{padding:30px;
 background:#0c2443;color:white;border-radius:14px;
 border-top:4px solid #32b8dc}
.v31-roadmap span{font-weight:800;letter-spacing:1.5px;
 font-size:11px;color:#8cdef4}
.v31-roadmap h3{font-size:24px;margin:18px 0 12px}
.v31-roadmap p{font-size:16px;color:#cbdaec}
.v31-timeline{max-width:950px;margin:auto;
 position:relative;border-left:3px solid #b7d3f6;
 padding-left:36px}
.v31-timeline article{display:grid;
 grid-template-columns:120px 1fr;gap:24px;
 padding:12px 0 34px;position:relative}
.v31-timeline article:before{content:"";
 position:absolute;left:-46px;top:19px;width:15px;
 height:15px;background:var(--blue);
 border:4px solid white;border-radius:50%;
 box-shadow:0 0 0 2px #b7d3f6}
.v31-year{font-size:18px;font-weight:850;color:var(--blue)}
.v31-timeline h3{margin:0 0 12px;font-size:23px}
.v31-timeline p{font-size:16px;color:var(--muted)}
.v31-faq-more{max-width:890px;margin:auto}
.v31-faq-more details{padding:23px 0;
 border-bottom:1px solid var(--line)}
.v31-faq-more summary{font-size:18px;font-weight:750;
 cursor:pointer}
.v31-faq-more p{font-size:16px;color:var(--muted);
 padding-top:12px}
.v31-contact-link{display:inline-block;
 color:var(--blue);font-weight:750;font-size:15px}
a:hover{text-decoration-thickness:2px}
@media(max-width:900px){
 .v31-grid,.v31-roadmap{grid-template-columns:1fr}
 .v31-linkband-inner{flex-direction:column;align-items:start}
}
@media(max-width:600px){
 .v31-timeline article{grid-template-columns:1fr;gap:4px}
 .v31-timeline{padding-left:25px}
 .v31-timeline article:before{left:-35px}
 .v31-tile{padding:25px}
 .v31-linkband{padding:44px 0}
}

/* WORLDHOSTESS_CUSTOM_AI_SERVICE */
.custom-ai-feature{
 display:grid;
 grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);
 gap:35px;
 align-items:center;
 background:#fff;
 border:1px solid var(--line);
 border-radius:16px;
 padding:38px;
}
.custom-ai-feature h3{
 font-size:clamp(24px,2.7vw,34px);
 margin:12px 0 18px;
}
.custom-ai-feature p,
.custom-ai-bottom p{
 color:var(--muted);
 font-size:16px;
 line-height:1.75;
}
.custom-ai-action{
 background:#0b2443;
 color:#fff;
 border-radius:13px;
 padding:30px;
}
.custom-ai-action strong{
 display:block;
 font-size:21px;
 line-height:1.35;
}
.custom-ai-action p{color:#c5d6e8;margin-top:15px}
.custom-ai-bottom{
 max-width:860px;
 margin:32px auto 0;
 text-align:center;
}
.custom-ai-action .button,
.custom-ai-bottom .button{margin-top:12px}
@media(max-width:820px){
 .custom-ai-feature{
  grid-template-columns:1fr;
  padding:24px;
 }
}

/* WORLDHOSTESS V3.2 — HARDWARE, SOFTWARE AND AI */
.v32-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
 gap:22px}
.v32-card{background:#fff;border:1px solid #dfe8f3;
 border-radius:15px;padding:32px;
 box-shadow:0 12px 30px #112a460a}
.v32-card h3{font-size:23px;margin:0 0 12px}
.v32-card p{font-size:16px;color:#607086}
.v32-center{text-align:center;margin:34px 0 0}
.v32-ai-hero{background:#07172d;padding:28px 0}
.v32-ai-hero img{display:block;width:100%;height:auto;
 border-radius:14px;object-fit:cover}
.v32-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
 gap:18px}
.v32-steps>div{border-top:3px solid #216be0;
 padding:25px;background:#f5f8fc;border-radius:10px}
.v32-steps strong{color:#216be0;font-size:24px}
.v32-steps h3{font-size:20px}
.v32-steps p{color:#607086;font-size:15px}
@media(max-width:1050px){
 .site-nav{gap:12px}
 .site-nav a{font-size:12px}
}
@media(max-width:820px){
 .v32-grid,.v32-steps{grid-template-columns:1fr}
 .site-nav a{font-size:14px}
}


/* WORLDHOSTESS_TECH_VISUAL_FIX */
.technology-visual-section {
    background: #081a32;
    padding: 32px 0 48px;
}

.technology-visual {
    margin: 0;
}

.technology-visual img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 560px;
    object-fit: cover;
    border-radius: 14px;
    box-shadow: 0 18px 42px rgba(0,0,0,.25);
}

.technology-visual figcaption {
    margin-top: 15px;
    color: #b8d0e8;
    font-size: 14px;
    letter-spacing: .3px;
}

@media (max-width: 768px) {
    .technology-visual-section {
        padding: 18px 0 30px;
    }
    .technology-visual img {
        max-height: none;
    }
}


/* WORLDHOSTESS_V32_SEVEN_VISUALS */

.wh-page-visual {
    padding: 34px 0 48px;
    background: #091b34;
}

.wh-page-visual-figure {
    margin: 0;
    overflow: hidden;
    border-radius: 14px;
    box-shadow: 0 20px 48px rgba(0,0,0,.22);
}

.wh-page-visual img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1672 / 941;
    object-fit: cover;
}

@media (max-width: 768px) {
    .wh-page-visual {
        padding: 18px 0 28px;
    }

    .wh-page-visual-figure {
        border-radius: 10px;
    }
}

/* =====================================================
   WORLDHOSTESS_CONTENT_FIRST_IMAGES_V1
   Smaller images — content and services come first
   ===================================================== */

/* Reduce large decorative illustration sections */
.wh-page-visual {
    padding: 16px 0 22px;
    background: #091b34;
}

.technology-visual-section {
    padding: 16px 0 22px;
}

/* Main visual on seven website pages */
.wh-page-visual-figure,
.technology-visual {
    margin: 0 auto;
    width: 100%;
    max-width: 950px;
}

.wh-page-visual img,
.technology-visual img {
    display: block;
    width: 100%;
    height: 260px;
    max-height: 260px;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center;
    border-radius: 12px;
}

/* Homepage: original data-centre image */
.hero-media img {
    width: 100%;
    height: 290px;
    max-height: 290px;
    aspect-ratio: auto;
    object-fit: cover;
}

/* Original Custom AI page banner */
.v32-ai-hero {
    padding: 16px 0;
}

.v32-ai-hero .wrap {
    max-width: 950px;
}

.v32-ai-hero img {
    display: block;
    width: 100%;
    height: 260px;
    max-height: 260px;
    object-fit: cover;
    object-position: center;
    border-radius: 12px;
}

/* Make the supporting AI visual less dominant */
body:has(.v32-ai-hero) .wh-page-visual img {
    height: 190px;
    max-height: 190px;
}

/* Reduce excessive whitespace */
.hero-grid {
    padding-top: 55px;
    padding-bottom: 55px;
}

.section {
    padding-top: 65px;
    padding-bottom: 65px;
}

.page-hero {
    padding-top: 55px;
    padding-bottom: 55px;
}

/* Mobile adjustments */
@media (max-width: 768px) {

    .wh-page-visual,
    .technology-visual-section {
        padding: 12px 0 18px;
    }

    .wh-page-visual img,
    .technology-visual img {
        height: 180px;
        max-height: 180px;
        border-radius: 9px;
    }

    .hero-media img {
        height: 210px;
        max-height: 210px;
    }

    .v32-ai-hero img {
        height: 190px;
        max-height: 190px;
    }

    body:has(.v32-ai-hero) .wh-page-visual img {
        height: 150px;
        max-height: 150px;
    }

    .hero-grid {
        padding-top: 35px;
        padding-bottom: 35px;
    }

    .section {
        padding-top: 45px;
        padding-bottom: 45px;
    }

    .page-hero {
        padding-top: 42px;
        padding-bottom: 42px;
    }
}


/* ===================================================
   WORLDHOSTESS_V32_UNIFORM_IMAGES_V1
   Eight-page consistent, content-first image design
   =================================================== */

/* Unified decorative image sections */
.wh-page-visual,
.technology-visual-section {
    padding: 18px 0 24px;
    background: #091b34;
}

/* Equal image widths and alignment */
.wh-page-visual > .wrap,
.technology-visual-section > .wrap {
    width: 100%;
    max-width: 948px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    box-sizing: border-box;
}

.wh-page-visual-figure,
.technology-visual {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    overflow: hidden;
    border-radius: 12px;
}

/* Consistent size, crop and positioning */
.wh-page-visual img,
.technology-visual img {
    display: block;
    width: 100%;
    height: 220px;
    max-height: 220px;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center center;
    border-radius: 12px;
}

/* Same height on every page, including Custom AI */
body:has(.v32-ai-hero) .wh-page-visual img {
    height: 220px;
    max-height: 220px;
}

/* Existing Custom AI illustration */
.v32-ai-hero {
    padding: 18px 0 24px;
}

.v32-ai-hero > .wrap {
    max-width: 948px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    box-sizing: border-box;
}

.v32-ai-hero img {
    display: block;
    width: 100%;
    height: 220px;
    max-height: 220px;
    object-fit: cover;
    object-position: center center;
    border-radius: 12px;
}

/* Original homepage data-centre image */
.hero-media img {
    width: 100%;
    height: 220px;
    max-height: 220px;
    object-fit: cover;
    object-position: center center;
    border-radius: 12px;
}

/* Keep page copy comfortably readable */
.technology-visual figcaption {
    margin-top: 10px;
    font-size: 13px;
    line-height: 1.5;
}

/* Mobile */
@media (max-width: 768px) {

    .wh-page-visual,
    .technology-visual-section,
    .v32-ai-hero {
        padding-top: 12px;
        padding-bottom: 18px;
    }

    .wh-page-visual > .wrap,
    .technology-visual-section > .wrap,
    .v32-ai-hero > .wrap {
        padding-left: 16px;
        padding-right: 16px;
    }

    .wh-page-visual img,
    .technology-visual img,
    body:has(.v32-ai-hero) .wh-page-visual img,
    .v32-ai-hero img,
    .hero-media img {
        height: 160px;
        max-height: 160px;
        object-fit: cover;
        object-position: center center;
        border-radius: 9px;
    }
}


/* ===================================================
   WORLDHOSTESS_V33_MATCH_HOME_IMAGES_V1
   Compact, consistent pictures on all eight pages
   =================================================== */

/* Shared picture frame */
.wh-page-visual-figure,
.technology-visual {
    width: 100%;
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    border-radius: 12px;
}

/* Shared picture dimensions */
.wh-page-visual img,
.technology-visual img,
.hero-media img {
    display: block;
    width: 100%;
    max-width: 480px;
    height: 220px;
    max-height: 220px;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center center;
    border-radius: 12px;
    margin-left: auto;
    margin-right: auto;
}

/* Uniform compact sections */
.wh-page-visual,
.technology-visual-section {
    padding-top: 18px;
    padding-bottom: 22px;
}

/* Keep the existing homepage text-and-picture layout */
.hero-media {
    text-align: center;
}

/* Also format any retained original AI banner */
.v32-ai-hero img {
    display: block;
    width: 100%;
    max-width: 480px;
    height: 220px;
    max-height: 220px;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center center;
    border-radius: 12px;
    margin-left: auto;
    margin-right: auto;
}

/* Mobile */
@media (max-width: 768px) {
    .wh-page-visual img,
    .technology-visual img,
    .hero-media img,
    .v32-ai-hero img,
    body:has(.v32-ai-hero) .wh-page-visual img {
        width: 100%;
        max-width: 480px;
        height: 160px;
        max-height: 160px;
        aspect-ratio: auto;
        object-fit: cover;
        object-position: center center;
        border-radius: 9px;
    }

    .wh-page-visual,
    .technology-visual-section {
        padding-top: 12px;
        padding-bottom: 18px;
    }
}


/* ==================================================
   WORLDHOSTESS_V33_IMAGE_TEXT_V1
   Informative copy beside compact page illustrations
   ================================================== */

.wh-page-visual > .wrap,
.technology-visual-section > .wrap {
    display: grid;
    grid-template-columns: minmax(0, 480px) minmax(0, 1fr);
    align-items: center;
    gap: 36px;
    max-width: 1120px;
    margin-left: auto;
    margin-right: auto;
}

.wh-page-visual-figure,
.technology-visual {
    width: 100%;
    max-width: 480px;
    margin: 0;
}

.wh-page-visual img,
.technology-visual img {
    width: 100%;
    max-width: 480px;
    height: 220px;
    max-height: 220px;
    object-fit: cover;
    border-radius: 12px;
}

.wh-image-text {
    min-width: 0;
    color: #e7f0ff;
}

.wh-image-text h2 {
    color: #ffffff;
    font-size: clamp(1.3rem, 2vw, 1.75rem);
    line-height: 1.25;
    margin: 0 0 14px;
}

.wh-image-text p {
    color: #c7d9ee;
    line-height: 1.7;
    margin: 0 0 20px;
}

.wh-image-text .button {
    display: inline-flex;
    width: auto;
    max-width: 100%;
}

/* Technology caption */
.technology-visual figcaption {
    color: #b9cde6;
    margin-top: 10px;
    font-size: 12px;
    line-height: 1.45;
}

/* Mobile: compact stacked layout */
@media (max-width: 768px) {

    .wh-page-visual > .wrap,
    .technology-visual-section > .wrap {
        grid-template-columns: minmax(0, 1fr);
        gap: 18px;
    }

    .wh-page-visual-figure,
    .technology-visual {
        width: 100%;
        max-width: 480px;
        margin: 0 auto;
    }

    .wh-page-visual img,
    .technology-visual img {
        height: 160px;
        max-height: 160px;
    }

    .wh-image-text h2 {
        font-size: 1.3rem;
    }

    .wh-image-text p {
        line-height: 1.6;
    }
}

