.ol-open-day{
  --ol-navy:#06366f;
  --ol-yellow:#ffc928;
  --ol-blue:#1769c2;
  --ol-ink:#162942;
  --ol-muted:#607287;
  --ol-line:#d9e6f1;
  --ol-bg:#f5faff;
  width:100%;
  overflow:hidden;
  color:var(--ol-ink) !important;
  font-family:Inter,Arial,sans-serif !important;
  line-height:1.55;
}
.ol-open-day *{box-sizing:border-box}
.ol-open-day a{text-decoration:none}
.ol-open-day img{display:block;width:100%;height:100%;object-fit:cover}
.olod-shell{width:min(1180px,calc(100% - 40px));margin:0 auto}

.olod-hero{padding:70px 0 78px;background:radial-gradient(circle at 84% 12%,rgba(255,201,40,.24),transparent 24rem),linear-gradient(180deg,#fff,#f8fbff)}
.olod-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:58px;align-items:center}
.olod-eyebrow{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(255,201,40,.55);background:#fff6cb;color:#765600;border-radius:999px;padding:8px 13px;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.olod-eyebrow span{width:8px;height:8px;background:var(--ol-yellow);border-radius:50%}
.olod-school-name{font-family:Georgia,serif;color:var(--ol-navy)!important;font-size:19px;font-weight:700;margin-top:22px}
.olod-hero h1{font-family:Georgia,serif!important;color:var(--ol-navy)!important;font-size:clamp(50px,6vw,84px)!important;line-height:.98!important;letter-spacing:-.045em!important;margin:10px 0 20px!important;font-weight:700!important}
.olod-intro{font-size:19px!important;line-height:1.6!important;color:#445a74!important;margin:0 0 20px!important;max-width:680px}
.olod-welcome{display:inline-flex;align-items:center;gap:9px;background:#edf7ff;border:1px solid #d4e9fa;color:var(--ol-navy)!important;padding:11px 14px;border-radius:13px;font-weight:700;margin-bottom:24px}
.olod-welcome i{color:var(--ol-blue)!important}
.olod-event-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}
.olod-event-card{display:flex;align-items:flex-start;gap:12px;background:#fff;border:1px solid var(--ol-line);border-radius:17px;padding:15px;box-shadow:0 9px 28px rgba(5,50,103,.06)}
.olod-event-card.olod-wide{grid-column:1/-1}
.olod-event-card i{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#fff4bd;color:var(--ol-navy)!important;flex:0 0 38px}
.olod-event-card small{display:block;color:#75869a!important;text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.06em;margin-bottom:2px}
.olod-event-card strong{display:block;color:var(--ol-navy)!important;font-size:15px;line-height:1.35}
.olod-primary-btn{display:inline-flex;align-items:center;gap:9px;background:var(--ol-yellow)!important;color:#072f61!important;border-radius:999px;padding:14px 20px;font-weight:900;box-shadow:0 8px 0 rgba(146,103,0,.14)}
.olod-main-photo{position:relative;min-height:570px;border-radius:34px;overflow:hidden;box-shadow:0 30px 70px rgba(5,50,103,.18);border:9px solid #fff;background:#eef4fa}
.olod-photo-note{position:absolute;right:22px;bottom:22px;background:var(--ol-yellow);color:var(--ol-navy)!important;padding:15px 20px;border-radius:18px;font-family:Georgia,serif;font-size:24px;line-height:1.05;transform:rotate(-2deg);box-shadow:0 12px 26px rgba(0,0,0,.12);font-weight:700}

.olod-gallery-section{padding:78px 0;background:#fff}
.olod-gallery-intro{max-width:760px;margin:0 auto 32px;text-align:center}
.olod-gallery-intro span,.olod-section-heading span,.olod-book-copy>span{display:block;color:var(--ol-blue)!important;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.olod-gallery-intro h2,.olod-section-heading h2,.olod-book-copy h2,.olod-cta-copy h2{font-family:Georgia,serif!important;color:var(--ol-navy)!important;font-size:clamp(32px,4vw,50px)!important;line-height:1.06!important;letter-spacing:-.025em!important;margin:0 0 10px!important}
.olod-gallery-intro p,.olod-section-heading p{color:var(--ol-muted)!important;font-size:16px!important;margin:0!important}
.olod-gallery{display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-template-rows:260px 150px;gap:16px}
.olod-gallery-photo{margin:0;border-radius:24px;overflow:hidden;box-shadow:0 12px 35px rgba(4,47,98,.1);border:1px solid #e4edf5;background:#eef4fa}
.olod-gallery-photo-1{grid-row:1/3}
.olod-gallery-photo-2{grid-column:2/4}
.olod-gallery-photo-3{grid-column:2/4}

.olod-benefits-section{padding:82px 0;background:var(--ol-bg)}
.olod-section-heading{text-align:center;max-width:760px;margin:0 auto 36px}
.olod-section-heading--compact{margin-bottom:34px}
.olod-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}
.olod-benefit{background:#fff;border:1px solid var(--ol-line);border-radius:22px;padding:25px;box-shadow:0 10px 30px rgba(5,50,103,.05)}
.olod-benefit-icon{width:48px;height:48px;border-radius:14px;background:#fff4bd;display:grid;place-items:center;color:var(--ol-navy)!important;margin-bottom:17px;font-size:19px}
.olod-benefit h3{color:var(--ol-navy)!important;font-size:17px!important;line-height:1.25!important;margin:0 0 8px!important;font-weight:800!important}
.olod-benefit p{color:var(--ol-muted)!important;font-size:14px!important;line-height:1.55!important;margin:0!important}

.olod-expect-section{padding:82px 0;background:#fff}
.olod-expect-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:stretch}
.olod-expect-panel{background:#fff;border:1px solid var(--ol-line);border-radius:30px;padding:40px 44px;box-shadow:0 10px 34px rgba(3,46,96,.06)}
.olod-expect-panel--blue{background:linear-gradient(145deg,var(--ol-navy),#0d579d);border-color:transparent;color:#fff!important}
.olod-expect-panel h3{font-size:26px!important;line-height:1.15!important;margin:0 0 26px!important;color:var(--ol-navy)!important;font-weight:800!important}
.olod-expect-panel--blue h3{color:#fff!important}
.olod-ticks{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.olod-ticks li{display:grid;grid-template-columns:34px 1fr;gap:14px;align-items:start;font-size:17px!important;line-height:1.45!important}
.olod-ticks li:before{content:"\f058";font-family:"Font Awesome 6 Free","Font Awesome 5 Free";font-weight:900;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.96);color:var(--ol-navy)!important;margin-top:1px}
.olod-details-card{display:grid;gap:0}
.olod-details-line{padding:0 0 22px;border-bottom:1px solid #dfe9f2;margin-bottom:22px}
.olod-details-line:last-child{padding-bottom:0;border-bottom:0;margin-bottom:0}
.olod-details-line strong{display:block;color:var(--ol-navy)!important;font-size:17px!important;line-height:1.35!important;margin-bottom:6px}
.olod-details-line span{display:block;color:#2c3d54!important;font-size:17px!important;line-height:1.55!important}
.olod-details-line a{display:block;color:#2f6ead!important;font-size:17px!important;line-height:1.55!important;font-weight:700}

.olod-cta-section{padding:0 0 82px;background:#fff}
.olod-cta-strip{background:linear-gradient(135deg,#ffca28,#f7d14d);border-radius:34px;padding:34px 56px;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:0 16px 38px rgba(174,125,0,.12)}
.olod-cta-copy p{margin:0!important;color:#36516c!important;font-size:18px!important}
.olod-cta-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;background:var(--ol-navy)!important;color:#fff!important;border-radius:999px;padding:18px 26px;font-weight:900;min-width:230px;font-size:18px!important}

.olod-book-section{padding:86px 0;background:linear-gradient(145deg,var(--ol-navy),#0c5598)}
.olod-book-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:54px;align-items:center}
.olod-book-copy>span{color:#ffdf6d!important}
.olod-book-copy h2{color:#fff!important}
.olod-book-copy p{font-size:18px!important;color:#dceafa!important;margin:0 0 28px!important}
.olod-contact-card{display:grid;gap:11px}
.olod-contact-card>div{display:flex;align-items:flex-start;gap:12px;color:#fff!important}
.olod-contact-card i{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:rgba(255,255,255,.12);color:var(--ol-yellow)!important;flex:0 0 36px}
.olod-contact-card a,.olod-contact-card span{color:#fff!important;font-weight:700}

.olod-form-card{background:#fff;border-radius:28px;padding:0;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.2)}
.olod-form-head{padding:25px 28px 20px;border-bottom:1px solid #e6edf4}
.olod-form-head small{display:block;color:var(--ol-blue)!important;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;margin-bottom:4px}
.olod-form-head h3{font-family:Georgia,serif!important;color:var(--ol-navy)!important;font-size:28px!important;line-height:1.1!important;margin:0 0 5px!important}
.olod-form-head p{margin:0!important;color:var(--ol-muted)!important;font-size:14px!important}
.olod-form{padding:25px 28px 28px}
.olod-form label{display:block;color:#29405f!important;font-size:13px!important;font-weight:800!important;margin:0 0 14px!important}
.olod-form label span{font-weight:500;color:#7a899b!important}
.olod-form input[type=text],.olod-form input[type=email],.olod-form input[type=tel],.olod-form textarea{width:100%!important;background:#fbfdff!important;border:1px solid #cbdbe8!important;color:#122841!important;border-radius:12px!important;padding:12px 13px!important;font:inherit!important;min-height:46px!important;margin-top:6px!important;box-shadow:none!important;outline:none!important}
.olod-form textarea{min-height:86px!important;resize:vertical!important}
.olod-form input:focus,.olod-form textarea:focus{border-color:var(--ol-blue)!important;box-shadow:0 0 0 4px rgba(23,105,194,.11)!important;background:#fff!important}
.olod-two-col{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.olod-consent{display:grid!important;grid-template-columns:19px 1fr;gap:10px;align-items:start;font-weight:500!important;color:#607287!important;font-size:12px!important;line-height:1.45!important;margin-top:4px!important}
.olod-consent input{width:17px!important;height:17px!important;margin:2px 0 0!important;accent-color:var(--ol-navy)}
.olod-consent a{color:var(--ol-navy)!important;text-decoration:underline!important;font-weight:700!important}
.olod-form button{width:100%;border:0!important;border-radius:13px!important;background:var(--ol-yellow)!important;color:#082f60!important;padding:14px 18px!important;font-weight:900!important;font-size:15px!important;display:flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;box-shadow:0 7px 0 rgba(145,102,0,.16)}
.olod-form button[disabled]{opacity:.65;cursor:not-allowed}
.olod-form-status{display:none;margin-top:15px;border-radius:12px;padding:12px 14px;font-size:13px;font-weight:700}
.olod-form-status.is-success{display:block;background:#e9f8f1;border:1px solid #b8e4d0;color:#176946!important}
.olod-form-status.is-error{display:block;background:#fff0f0;border:1px solid #f1c6c6;color:#8d2c2c!important}
.olod-hp{position:absolute!important;left:-9999px!important;top:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}

@media(max-width:950px){
  .olod-hero-grid,.olod-book-grid,.olod-expect-grid{grid-template-columns:1fr}
  .olod-main-photo{min-height:450px}
  .olod-benefits{grid-template-columns:1fr 1fr}
  .olod-gallery{grid-template-columns:1fr 1fr;grid-template-rows:330px 200px}
  .olod-gallery-photo-1{grid-row:auto;grid-column:1/-1}
  .olod-gallery-photo-2,.olod-gallery-photo-3{grid-column:auto}
  .olod-cta-strip{display:block}
  .olod-cta-btn{margin-top:22px}
}
@media(max-width:620px){
  .olod-shell{width:min(100% - 24px,1180px)}
  .olod-hero{padding:45px 0 56px}
  .olod-hero h1{font-size:52px!important}
  .olod-intro{font-size:17px!important}
  .olod-event-grid,.olod-two-col{grid-template-columns:1fr}
  .olod-event-card.olod-wide{grid-column:auto}
  .olod-main-photo{min-height:360px;border-width:6px;border-radius:26px}
  .olod-photo-note{font-size:19px;right:14px;bottom:14px}
  .olod-gallery-section,.olod-benefits-section,.olod-book-section,.olod-expect-section{padding:58px 0}
  .olod-cta-section{padding:0 0 58px}
  .olod-gallery{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(3,240px)}
  .olod-gallery-photo-1,.olod-gallery-photo-2,.olod-gallery-photo-3{grid-column:auto;grid-row:auto}
  .olod-benefits{grid-template-columns:1fr}
  .olod-form-head,.olod-form{padding-left:20px;padding-right:20px}
  .olod-expect-panel{padding:26px 24px;border-radius:24px}
  .olod-ticks li,.olod-details-line span,.olod-details-line a{font-size:16px!important}
  .olod-cta-strip{padding:28px 24px;border-radius:28px}
  .olod-cta-btn{min-width:0;width:100%}
}
