/* === Refined clean layout overrides === */
:root{
  --ink:#1e2a37;
  --muted:#66717d;
  --paper:#f7f8fa;
  --white:#fff;
  --orange:#b23b72;
  --orange-dark:#8f2f5e;
  --yellow:#f2e8ef;
  --blue:#294766;
  --line:#dfe4ea;
  --success:#294766;
}
body{background:var(--paper)}
.site-header{
  min-height:72px;
  height:72px;
  background:rgba(255,255,255,.94);
  border-bottom:1px solid var(--line);
  box-shadow:0 1px 10px rgba(30,42,55,.04);
  backdrop-filter:blur(14px);
}
.brand{gap:10px}
.brand strong{font-size:19px;letter-spacing:-.035em}
.brand small{color:#7c8791;letter-spacing:.09em}
.language-switcher{
  background:#f5f7f9;
  border-color:#e1e6eb;
  border-radius:12px;
  gap:2px;
  padding:3px;
}
.language-switcher button{
  min-height:36px;
  border-radius:9px;
  padding:0 9px;
  font-size:10.5px;
}
.language-switcher button.active{background:var(--blue)}
.header-action{
  border:1px solid #cfd8e1;
  border-radius:10px;
  padding:9px 13px;
  color:var(--blue);
  background:#fff;
  font-size:12px;
}

.hero{
  grid-template-columns:1.05fr .95fr;
  gap:54px;
  min-height:auto;
  padding:62px 24px 72px;
}
.eyebrow{
  margin-bottom:16px;
  color:var(--orange-dark);
  letter-spacing:.11em;
  font-size:11px;
}
.hero h1{
  font-size:clamp(46px,5.6vw,72px);
  line-height:1.05;
  letter-spacing:-.062em;
}
.hero-lead{
  margin-top:24px;
  max-width:600px;
  font-size:17px;
  line-height:1.72;
}
.audience-selector{gap:12px;margin-top:28px}
.audience-card{
  min-height:148px;
  border-radius:14px;
  padding:18px 48px 18px 18px;
  border-color:#dfe4ea;
  box-shadow:0 4px 14px rgba(30,42,55,.045);
}
.audience-card:hover{
  transform:translateY(-2px);
  box-shadow:0 9px 20px rgba(30,42,55,.09);
}
.audience-card.active{
  border:1px solid #be7a9a;
  background:#fbf5f8;
  box-shadow:0 7px 18px rgba(178,59,114,.10);
}
.audience-card>strong{font-size:18px;margin-top:8px}
.audience-card>small{font-size:11.5px;line-height:1.55}
.audience-card>i{
  width:28px;height:28px;
  right:16px;bottom:16px;
  background:var(--blue);
}
.quick-facts{
  margin-top:38px;
  padding-top:20px;
}
.quick-facts div{
  border-left:1px solid #cfd7df;
  padding-left:14px;
}
.quick-facts dd{font-size:15px}

.hero-studio{
  min-height:500px;
  padding:36px;
  border-radius:18px;
  border-color:#dfe4ea;
  box-shadow:0 18px 42px rgba(30,42,55,.09);
  background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%);
}
.studio-frequency{color:#2947660d;font-size:112px}
.on-air{
  top:24px;left:24px;
  border:1px solid #d8e0e7;
  border-radius:999px;
  background:#fff;
  color:var(--blue);
  padding:8px 11px;
}
.hero-studio>strong{font-size:26px;line-height:1.4}

.program{
  padding:88px max(24px,50vw - 620px) 96px;
}
.section-heading h2,.planner h2{
  font-size:clamp(36px,4.4vw,56px);
  letter-spacing:-.045em;
}
.section-heading>p:last-child,.planner-intro>p{
  margin-top:18px;
  font-size:16px;
  line-height:1.75;
}
.selected-audience span{
  border-radius:7px;
  padding:6px 9px;
}
.occasion-list{
  border-left:0;
  border:1px solid #e2d7df;
  border-radius:12px;
  background:#fbf7f9;
  padding:17px 18px;
}
.occasion-list li{border-radius:8px}

.program-grid{
  border:0;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-top:42px;
}
.occasion-list+.program-grid{margin-top:22px}
.program-card,
.program-card:first-child{
  min-height:254px;
  border:1px solid var(--line);
  border-radius:14px;
  padding:22px 20px;
  background:#fff;
}
.program-card h3{
  margin:42px 0 12px;
  font-size:20px;
}
.program-card p{font-size:14px;line-height:1.7}
.program-note{margin-top:26px}

.planner{
  gap:56px;
  padding:90px max(24px,50vw - 620px) 100px;
  background:#f3f5f7;
}
.planner-intro{top:94px}
.guide-panel{
  margin-top:34px;
  padding-top:22px;
}
.application{
  border:1px solid #e0e5ea;
  border-radius:18px;
  padding:0 32px 30px;
  box-shadow:0 14px 36px rgba(30,42,55,.07);
}
.form-section{padding:32px 0}
.form-heading{margin-bottom:24px}
.form-heading>span{
  width:28px;height:28px;
  border-radius:8px;
  background:var(--blue);
}
.form-heading h3{font-size:18px}

input,select,textarea{
  border-color:#d6dde4;
  border-radius:10px;
  padding:12px 13px;
  background:#fff;
}
.time-options{gap:8px}
.time-option{
  min-height:66px;
  border-color:#d6dde4;
  border-radius:10px;
  padding:10px 12px;
}
.time-option.selected{
  border:1px solid #be7a9a;
  background:#fbf5f8;
}
.fee-preview{
  border:1px solid #d5dde5;
  border-radius:12px;
  background:#f8fafc;
  box-shadow:none;
  padding:18px;
}
.privacy-consent{
  border-color:#dde3e9;
  border-radius:12px;
  background:#f8fafc;
}
.copy-application-button,
.send-button{
  border-radius:10px;
  box-shadow:none!important;
}
.copy-application-button{background:#f7f9fb;border-color:#d7dee5}
.submission-buttons .email-button{background:var(--blue)}
.secondary-actions{margin-top:20px}
.summary-box{
  border-left:0;
  border:1px solid #dfe4ea;
  border-radius:12px;
  background:#f8fafc;
}
footer{
  background:#1c2936;
  padding-top:40px;
  padding-bottom:40px;
}

@media (max-width:980px){
  .site-header{height:auto;min-height:70px}
  .program-grid{grid-template-columns:1fr 1fr}
  .program-card,.program-card:first-child,.program-card:nth-child(2){
    border:1px solid var(--line);
  }
}
@media (max-width:640px){
  .site-header{padding:9px 16px}
  .hero{gap:42px;padding:42px 18px 62px}
  .hero h1{font-size:44px}
  .hero-lead{font-size:16px;line-height:1.7}
  .audience-card{min-height:132px}
  .hero-studio{
    min-height:400px;
    margin-right:0;
    border-radius:14px;
    box-shadow:0 12px 28px rgba(30,42,55,.08);
  }
  .program{padding:68px 18px 72px}
  .section-heading h2,.planner h2{font-size:36px}
  .program-grid{grid-template-columns:1fr;gap:10px}
  .program-card,.program-card:first-child,.program-card:nth-child(2){
    min-height:auto;
    border:1px solid var(--line);
    border-radius:12px;
  }
  .program-card h3{margin-top:28px}
  .planner{gap:38px;padding:68px 18px 76px}
  .application{
    margin:0;
    padding:0 18px 24px;
    border-radius:14px;
    box-shadow:0 8px 20px rgba(30,42,55,.06);
  }
  .form-section{padding:28px 0}
}