.malls-hero{min-height:0;padding:76px 0 64px;background:var(--surface)!important}
.malls-hero-copy{display:grid;grid-template-columns:1.12fr .88fr;gap:58px;align-items:end;margin-bottom:36px}
.malls-hero h1{max-width:900px;margin-bottom:0;font-size:clamp(54px,7vw,92px);line-height:.95;letter-spacing:-.055em}
.malls-hero-intro p{margin:0 0 25px;font-size:18px;line-height:1.62;color:var(--text)}
.malls-hero-image,.malls-program-image,.malls-feature-image,.malls-wide-image{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:var(--bg);box-shadow:var(--shadow);aspect-ratio:1.9/1}
.malls-hero-image img,.malls-program-image img,.malls-feature-image img,.malls-wide-image img{width:100%;height:100%;display:block;object-fit:cover}
.malls-program-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px;margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.malls-program-list li{position:relative;min-height:61px;padding:18px 12px 18px 29px;border-bottom:1px solid var(--line);font-size:16px;font-weight:850;line-height:1.5;color:var(--ink)}
.malls-program-list li:before{content:"";position:absolute;left:2px;top:25px;width:10px;height:10px;border-radius:50%;background:var(--green)}
.malls-program-image{margin-top:30px}
.malls-inline-cta{margin-top:18px}
.malls-benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.malls-benefit-card{position:relative;min-height:240px;padding:28px 24px 24px}
.malls-benefit-card:before{content:"";display:block;width:34px;height:4px;margin-bottom:30px;border-radius:9px;background:var(--green)}
.malls-benefit-card h3{margin:0 0 12px;font-size:22px;line-height:1.18;letter-spacing:-.025em}
.malls-benefit-card p{margin:0;font-size:16px;line-height:1.58}
.malls-benefit-card:hover:before,.malls-benefit-card.auto-active:before{background:var(--ink)}
.malls-integration-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:42px;align-items:center}
.malls-integration-copy h2{margin:12px 0 18px;font-size:clamp(38px,4.4vw,60px);line-height:1.02;letter-spacing:-.045em;color:var(--ink)}
.malls-integration-copy>p{margin:0 0 22px;font-size:16px;line-height:1.65;color:var(--muted)}
.malls-check-list{display:grid;gap:11px;margin:0 0 28px;padding:0;list-style:none}
.malls-check-list li{position:relative;padding-left:25px;font-size:16px;line-height:1.58;color:var(--text)}
.malls-check-list li:before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;border-radius:50%;background:var(--green)}
.malls-wide-image{margin-bottom:28px}
.malls-responsibility-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:stretch}
.malls-responsibility-grid>div:first-child{padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.malls-responsibility-grid h3{margin:0 0 18px;font-size:26px;line-height:1.18;color:var(--ink)}
.malls-about-card{padding:30px}
.malls-about-card h3{margin:24px 0 14px;font-size:30px;line-height:1.1;letter-spacing:-.03em}
.malls-about-card p{margin:0;font-size:16px;line-height:1.62}
.malls-books-section{background:#fff!important}
.malls-book-grid{margin-bottom:0}
.malls-books-section .book-cover-image{background:#fff}
.malls-books-section .book-cover-image img{width:63.7%;height:63.7%;padding:0;object-fit:contain}
.malls-research-section{background:#eef2ec!important;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.malls-research-section .research-item{background:#fff}
.malls-research-cta{margin-top:22px}
.malls-contact-section{background:var(--ink)!important;color:var(--surface)}
.malls-contact-panel{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.malls-contact-panel .section-kicker{color:#cbd1ca}
.malls-contact-panel h2{max-width:800px;margin:12px 0 14px;font-size:clamp(40px,5vw,68px);line-height:1;letter-spacing:-.045em;color:var(--surface)}
.malls-contact-panel p{max-width:850px;margin:0;font-size:16px;line-height:1.65;color:#d9ddd8}
.malls-contact-panel .btn.primary:hover{background:var(--surface);color:var(--ink)}
.malls-email-fallback{margin:4px 0 0!important;font-size:13px!important;text-align:center}
.malls-email-fallback a{font-weight:900;text-decoration:underline;text-underline-offset:3px;color:var(--ink)}
@media(max-width:1100px){.malls-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){
  .malls-hero-copy,.malls-integration-layout,.malls-responsibility-grid{grid-template-columns:1fr;gap:28px}
  .malls-hero-copy{align-items:start}
  .malls-contact-panel{grid-template-columns:1fr;gap:28px}
  .malls-contact-panel .btn{justify-self:start}
}
@media(max-width:620px){
  .malls-hero{padding:50px 0 42px}
  .malls-hero-copy{gap:24px;margin-bottom:28px}
  .malls-hero h1{font-size:clamp(39px,12vw,48px);line-height:.98}
  .malls-hero-intro p{font-size:16px;line-height:1.58}
  .malls-hero-image,.malls-program-image,.malls-feature-image,.malls-wide-image{aspect-ratio:1.55/1;border-radius:16px}
  .malls-program-list,.malls-benefit-grid{grid-template-columns:1fr}
  .malls-program-list{gap:0}
  .malls-program-list li{min-height:0;padding:15px 8px 15px 27px;font-size:16px;line-height:1.45}
  .malls-program-list li:before{top:21px}
  .malls-program-image{margin-top:24px}
  .malls-benefit-card{min-height:0;padding:22px 20px}
  .malls-benefit-card:before{margin-bottom:22px}
  .malls-inline-cta{margin-top:12px}
  .malls-integration-copy h2{font-size:clamp(32px,10vw,38px)}
  .malls-integration-copy>p,.malls-contact-panel p,.malls-check-list li{font-size:16px}
  .malls-responsibility-grid>div:first-child,.malls-about-card{padding:22px 20px}
  .malls-about-card h3{font-size:27px}
  .malls-contact-panel h2{font-size:clamp(34px,11vw,44px)}
  .malls-contact-panel .btn{width:100%;min-height:48px}
}

/* Consistent section rhythm and readable hosting form. */
.malls-page .section{padding:72px 0}
.malls-page .section-head{margin-bottom:32px}
.malls-page .section-head p{font-size:16px;line-height:1.65;color:#444b44}
.malls-hero-copy{margin-bottom:0;align-items:center}
.malls-page #format .section-head{grid-template-columns:1fr;gap:20px;max-width:820px}
.malls-program-list{column-gap:48px}
.malls-program-list li{font-family:inherit;font-weight:600;font-size:17px;line-height:1.6;padding:18px 10px 18px 28px}
.malls-wide-image{height:260px;aspect-ratio:auto;margin-bottom:32px}
.malls-wide-image img{object-position:center 45%}
.malls-contact-panel{grid-template-columns:1fr 1fr;align-items:start;gap:56px}
.malls-contact-form-panel{background:#fff;border-radius:20px;padding:32px;color:var(--ink);min-width:0}
.malls-contact-form-panel label>span{font-size:14px;line-height:1.4;letter-spacing:0;text-transform:none;color:#343936}
.malls-contact-form-panel input,.malls-contact-form-panel textarea{font-size:16px;min-height:48px}
.malls-contact-form-panel .malls-email-fallback{color:#343936}
.malls-contact-email{display:inline-block;margin-top:24px;color:#fff;text-decoration:underline;overflow-wrap:anywhere}
.malls-host-modal label>span{font-size:14px;text-transform:none;letter-spacing:0}
.malls-host-modal input,.malls-host-modal textarea{font-size:16px}
.malls-contact-form-panel .btn.primary:hover{background:#111311;color:#fff}
@media(max-width:900px){.malls-contact-panel{grid-template-columns:1fr;gap:32px}}
@media(max-width:620px){
 .malls-page .section{padding:48px 0}
 .malls-program-list{grid-template-columns:1fr}
 .malls-program-list li{font-size:16px;line-height:1.6;padding:15px 8px 15px 27px}
 .malls-wide-image{height:180px}
 .malls-contact-form-panel{padding:24px 20px}
}

/* Malls hero: copy and interactive logo, stacked on phones. */
.malls-hero-copy{grid-template-columns:1.15fr .85fr;gap:40px}
.malls-hero h1{font-size:clamp(44px,5.4vw,76px);overflow-wrap:normal}
.malls-hero-intro{margin-top:28px;max-width:600px}
.malls-logo{width:100%;min-width:0;perspective:1200px}
.malls-logo .hero-logo-stage{width:100%;height:auto;aspect-ratio:1;display:grid;place-items:center}
.malls-logo img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:900px){.malls-hero-copy{grid-template-columns:1fr;gap:28px}.malls-logo{max-width:420px;margin-inline:auto}.malls-hero h1{font-size:clamp(40px,8vw,68px)}}
@media(max-width:620px){.malls-hero h1{font-size:clamp(36px,10vw,48px)}.malls-logo{max-width:320px}.malls-hero-intro{margin-top:22px}}
@media(prefers-reduced-motion:reduce){.malls-logo .hero-logo-stage{animation:none!important;transform:none!important}}

.malls-logo{position:relative}

.malls-logo{position:relative}

.malls-program-heading{color:var(--ink)}
/* Compact hosting dialog with scrolling available for small screens/keyboards. */
.malls-host-modal{max-height:calc(100dvh - 20px);overflow:auto;overscroll-behavior:contain}
.malls-host-modal .modal-body{padding:26px}
.malls-host-modal .modal-body>p{margin-bottom:14px}
@media(max-width:620px){
 .malls-host-modal .modal-body{padding:20px 16px}
 .malls-host-modal .section-kicker{display:block;padding-right:42px;font-size:10px}
 .malls-host-modal .modal-body h2{font-size:27px;line-height:1.08;margin:10px 0}
 .malls-host-modal .modal-body>p{font-size:14px;line-height:1.4;margin-bottom:12px}
 .malls-host-modal form{gap:10px}
 .malls-host-modal label{gap:4px}
 .malls-host-modal label>span{font-size:13px}
 .malls-host-modal input{padding:10px 12px;min-height:44px}
 .malls-host-modal textarea{padding:10px 12px;min-height:76px;height:76px}
}
