:root {
  --navy: #062d4b;
  --navy-deep: #031d32;
  --blue: #0b78b8;
  --cyan: #19a8d5;
  --sky: #eaf6fb;
  --soft: #f3f8fb;
  --white: #fff;
  --ink: #122b3c;
  --muted: #587082;
  --line: #d5e4ec;
  --gold: #f3c745;
  --shadow: 0 20px 60px rgba(4, 41, 66, .12);
  --radius: 22px;
  --container: 1200px;
  --header: 82px;
  --font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: calc(var(--header) + 18px); }
body { margin: 0; color: var(--ink); background: var(--white); font-family: var(--font); font-size: 17px; line-height: 1.7; -webkit-font-smoothing: antialiased; overflow-x: clip; }
body.menu-open { overflow: hidden; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; }
button, input, textarea, select { font: inherit; }
h1, h2, h3 { margin: 0 0 .7em; color: var(--navy); font-weight: 720; line-height: 1.12; letter-spacing: -.035em; text-wrap: balance; }
h1 { font-size: clamp(2.65rem, 6vw, 5.6rem); }
h2 { font-size: clamp(2rem, 4vw, 3.7rem); }
h3 { font-size: clamp(1.2rem, 2vw, 1.55rem); }
p { margin: 0 0 1.15em; }
address { font-style: normal; }
.container { width: min(calc(100% - 48px), var(--container)); margin-inline: auto; }
.section { padding: clamp(76px, 9vw, 132px) 0; }
.section-soft { background: var(--soft); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 999; left: 16px; top: -100px; padding: 12px 18px; background: var(--white); color: var(--navy); border-radius: 8px; }
.skip-link:focus { top: 12px; }
:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }
.eyebrow { margin-bottom: 18px; color: #bfeeff; font-size: .76rem; font-weight: 800; line-height: 1.2; letter-spacing: .19em; text-transform: uppercase; }
.eyebrow.dark { color: var(--blue); }
.button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; gap: 8px; padding: 13px 24px; border: 1px solid transparent; border-radius: 100px; font-size: .89rem; font-weight: 760; line-height: 1.2; text-decoration: none; transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--cyan); color: var(--navy-deep); box-shadow: 0 10px 30px rgba(25, 168, 213, .28); }
.button-primary:hover { background: #35bce5; }
.button-ghost { border-color: rgba(255,255,255,.6); background: rgba(4, 29, 49, .2); color: var(--white); backdrop-filter: blur(8px); }
.button-light { background: var(--white); color: var(--navy); }
.button-dark { background: var(--navy); color: var(--white); }

/* Header */
.site-header { position: sticky; z-index: 100; top: 0; min-height: var(--header); background: rgba(255,255,255,.97); border-bottom: 1px solid rgba(8, 59, 95, .12); box-shadow: 0 5px 30px rgba(3, 38, 61, .06); }
.header-shell { width: min(calc(100% - 36px), 1440px); min-height: var(--header); margin: auto; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: clamp(14px, 1.7vw, 28px); }
.brand { display: inline-flex; align-items: center; gap: 13px; color: var(--navy); text-decoration: none; }
.brand-mark{position:relative;display:block;width:74px;height:62px;overflow:hidden;flex:0 0 auto}
.brand-mark img{position:absolute;top:50%;left:50%;width:179px;max-width:none;height:62px;object-fit:contain;transform:translate(-50%,-50%)}
.brand-copy { display: grid; line-height: 1; }
.brand-copy strong { font-size:.82rem;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap }
.desktop-nav { display: flex; align-items: center; justify-content: center; gap: clamp(9px, .95vw, 18px); }
.desktop-nav a { position: relative; padding: 30px 0 28px; color: #24475f; font-size: clamp(.73rem, .8vw, .86rem); font-weight: 670; line-height: 1.2; text-decoration: none; white-space: nowrap; }
.desktop-nav a::after { position: absolute; right: 0; bottom: 19px; left: 0; height: 2px; background: var(--cyan); content: ""; transform: scaleX(0); transform-origin: left; transition: transform .2s ease; }
.desktop-nav a:hover::after, .desktop-nav a[aria-current="page"]::after { transform: scaleX(1); }
.desktop-nav .nav-online { display: inline-flex; min-height: 34px; align-items: center; gap:6px; padding: 7px 13px; border: 1px solid rgba(11,120,184,.24); border-radius: 100px; background: linear-gradient(135deg, #e8f7fc, #d5eff8); color: var(--navy); box-shadow: 0 6px 18px rgba(6,45,75,.08); font-size: clamp(.7rem, .76vw, .82rem); font-weight: 800; line-height: 1; white-space: nowrap; }
.nav-online-menu{position:relative;display:flex;align-items:center;padding-block:18px}
.nav-online-menu .nav-online{cursor:pointer}
.nav-online-submenu{position:absolute;top:calc(100% - 9px);left:50%;display:grid;width:max-content;min-width:220px;padding:8px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 20px 50px rgba(4,41,66,.17);opacity:0;visibility:hidden;transform:translate(-50%,8px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease}
.nav-online-submenu a{padding:12px 14px;border-radius:10px;font-size:.78rem}
.nav-online-submenu a::after{display:none}
.nav-online-submenu a:hover,.nav-online-submenu a[aria-current="page"]{background:var(--soft);color:var(--blue)}
.nav-online-menu:hover .nav-online-submenu,.nav-online-menu:focus-within .nav-online-submenu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.nav-online-menu.is-current .nav-online{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(25,168,213,.12)}
.header-actions { display: flex; align-items: center; gap: 14px; }
.phone-link { display: inline-flex; align-items: center; color: var(--navy); font-size: .84rem; font-weight: 760; text-decoration: none; white-space: nowrap; }
.language-switcher { display: flex; overflow: hidden; border: 1px solid var(--line); border-radius: 100px; background: var(--soft); }
.language-switcher a { padding: 7px 8px; color: var(--muted); font-size: .66rem; font-weight: 800; line-height: 1; text-decoration: none; }
.language-switcher a[aria-current="true"] { background: var(--navy); color: var(--white); }
.mobile-language-switcher{display:none;position:relative;color:var(--navy)}
.mobile-language-switcher summary{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--soft);font-size:.7rem;font-weight:850;line-height:1;list-style:none;cursor:pointer}
.mobile-language-switcher summary::-webkit-details-marker{display:none}
.mobile-language-switcher>div{position:absolute;z-index:4;top:calc(100% + .6rem);right:0;display:grid;min-width:72px;overflow:hidden;border:1px solid var(--line);border-radius:.8rem;background:#fff;box-shadow:var(--shadow)}
.mobile-language-switcher a{padding:.7rem 1rem;color:var(--muted);font-size:.72rem;font-weight:800;text-align:center;text-decoration:none}
.mobile-language-switcher a[aria-current="page"]{background:var(--navy);color:#fff}
.menu-toggle { display: none; width: 44px; height: 44px; padding: 10px; border: 0; border-radius: 50%; background: var(--navy); }
.menu-toggle span:not(.sr-only) { display: block; width: 100%; height: 2px; margin: 4px 0; background: white; transition: transform .2s ease, opacity .2s ease; }
.menu-toggle[aria-expanded="true"] span:nth-of-type(2) { transform: translateY(6px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:nth-of-type(3) { opacity: 0; }
.menu-toggle[aria-expanded="true"] span:nth-of-type(4) { transform: translateY(-6px) rotate(-45deg); }
.mobile-nav { position: fixed; inset: var(--header) 0 0; padding: 28px 24px 48px; overflow: auto; background: var(--white); }
.mobile-nav[hidden] { display: none; }
.mobile-nav a { display: block; padding: 16px 4px; border-bottom: 1px solid var(--line); color: var(--navy); font-size: 1.25rem; font-weight: 700; text-decoration: none; }
.mobile-nav a[aria-current="page"] { color: var(--blue); }
.mobile-nav .nav-online { display: flex; min-height: 52px; align-items: center; margin-top: 14px; padding: 12px 18px; border: 1px solid rgba(11,120,184,.24); border-radius: 14px; background: linear-gradient(135deg, #e8f7fc, #d5eff8); color: var(--navy); font-size: 1.15rem; font-weight: 800; }
.mobile-online-menu{margin-top:14px;border:1px solid rgba(11,120,184,.24);border-radius:14px;background:linear-gradient(135deg,#e8f7fc,#d5eff8);overflow:hidden}
.mobile-online-menu summary{display:flex;min-height:52px;align-items:center;justify-content:space-between;padding:12px 18px;color:var(--navy);font-size:1.15rem;font-weight:800;list-style:none;cursor:pointer}
.mobile-online-menu summary::-webkit-details-marker{display:none}
.mobile-online-menu summary::after{content:'+';font-size:1.45rem;font-weight:500;line-height:1;transition:transform .2s ease}
.mobile-online-menu[open] summary::after{transform:rotate(45deg)}
.mobile-online-menu>div{padding:0 14px 12px}
.mobile-nav .mobile-online-menu a{padding:12px 8px;border-top:1px solid rgba(11,120,184,.15);border-bottom:0;font-size:1rem}
.mobile-nav .mobile-phone { margin-top: 20px; border: 0; font-size: 1.05rem; }

/* Hero */
.hero, .inner-hero { position: relative; isolation: isolate; display: grid; min-height: calc(100svh - var(--header)); align-items: center; overflow: hidden; color: var(--white); }
.hero-media, .inner-hero-media { position: absolute; z-index: -3; inset: -5%; background-image: var(--hero-image); background-position: center; background-size: cover; transform: translate3d(0, var(--parallax-y, 0), 0) scale(1.04); will-change: transform; }
.hero-overlay { position: absolute; z-index: -2; inset: 0; background: linear-gradient(90deg, rgba(2,25,43,.88) 0%, rgba(4,48,77,.58) 48%, rgba(1,22,38,.15) 100%), linear-gradient(0deg, rgba(1,23,39,.45), transparent 40%); }
.hero-content { padding-top: 50px; padding-bottom: 160px; }
.hero-content h1, .inner-hero-content h1 { max-width: 900px; color: var(--white); }
.hero-content h1 { max-width: 980px; }
.hero-lead, .inner-hero-content > p:not(.eyebrow) { max-width: 720px; color: #e5f5fc; font-size: clamp(1.08rem, 1.7vw, 1.35rem); line-height: 1.55; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 32px; }
.hero-content-simple{padding:80px 0;text-align:center;justify-items:center}
.hero-content-simple h1{max-width:1100px;margin:0 auto;color:#fff;font-size:clamp(3.1rem,7vw,6.8rem);text-shadow:0 12px 38px rgba(0,22,39,.34)}
.hero-content-simple .hero-actions{justify-content:center;margin-top:2rem}
.nautical-divider{display:flex;align-items:center;justify-content:center;gap:.85rem;margin:1.3rem auto;color:var(--blue)}
.nautical-divider .nautical-wave{display:block;width:clamp(7.5rem,18vw,16rem);height:20px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 18'%3E%3Cpath d='M0 9C8 1 16 1 24 9S40 17 48 9S56 1 64 9' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x center/64px 18px;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 18'%3E%3Cpath d='M0 9C8 1 16 1 24 9S40 17 48 9S56 1 64 9' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x center/64px 18px;opacity:.78}
.nautical-divider b{font-size:1.55rem;line-height:1}
.nautical-divider-light{color:#d8f5ff;margin:1.5rem auto}
.nautical-divider-small{margin:.9rem auto 0;transform:scale(.76)}
.hero-facts { position: absolute; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(3, 1fr); background: rgba(255,255,255,.96); color: var(--navy); box-shadow: var(--shadow); }
.hero-facts > div { display: flex; min-height: 112px; align-items: center; gap: 15px; padding: 25px 34px; border-right: 1px solid var(--line); }
.hero-facts > div:last-child { border: 0; }
.hero-facts strong { font-size: 2rem; line-height: 1; }
.hero-facts span { color: var(--muted); font-size: .84rem; line-height: 1.35; }
.inner-hero { min-height: min(680px, calc(100svh - var(--header))); }
.inner-hero-compact { min-height: 530px; }
.inner-hero-content { padding: 110px 0 90px; }
.inner-hero-content h1 { max-width: 1000px; font-size: clamp(2.7rem, 5.3vw, 5rem); }
.inner-hero-content .button { margin-top: 20px; }

/* Sections */
.split-heading, .two-column { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(48px, 9vw, 120px); align-items: start; }
.split-heading h2, .two-column h2 { max-width: 650px; }
.split-heading > div:last-child, .two-column > div:last-child { padding-top: 32px; color: var(--muted); font-size: 1.04rem; }
.section-heading { max-width: 760px; margin-bottom: 48px; }
.course-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.course-card { overflow: hidden; background: var(--white); border-radius: var(--radius); box-shadow: 0 15px 45px rgba(5,50,80,.09); transition: transform .3s ease, box-shadow .3s ease; }
.course-card:hover { transform: translateY(-7px); box-shadow: var(--shadow); }
.course-card img { width: 100%; aspect-ratio: 1.45; object-fit: cover; }
.course-card > div { padding: 28px; }
.course-card span, .value-grid span { color: var(--cyan); font-size: .75rem; font-weight: 800; letter-spacing: .12em; }
.course-card h3 { margin-top: 14px; }
.course-card p { color: var(--muted); font-size: .92rem; }
.course-card a { color: var(--blue); font-size: .86rem; font-weight: 800; text-decoration: none; }
.parallax-band, .feature-strip { position: relative; isolation: isolate; overflow: hidden; background-image: linear-gradient(rgba(3,35,57,.79),rgba(3,35,57,.79)), var(--band-image); background-attachment: fixed; background-position: center; background-size: cover; color: var(--white); }
.parallax-band .container { display: flex; min-height: 390px; align-items: center; justify-content: space-between; gap: 40px; }
.parallax-band p { max-width: 770px; margin: 0; color: var(--white); font-size: clamp(2rem, 4.5vw, 4.1rem); font-weight: 700; line-height: 1.12; letter-spacing: -.04em; text-wrap: balance; }
.value-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 60px; }
.value-grid > div { padding-top: 24px; border-top: 2px solid var(--line); }
.value-grid h3 { margin-top: 20px; }
.value-grid p { color: var(--muted); }
.topic-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; }
.topic-card { min-height: 170px; padding: 28px; background: var(--white); border: 1px solid var(--line); border-radius: 17px; }
.topic-card span { color: var(--cyan); font-size: .73rem; font-weight: 800; }
.topic-card h3 { margin-top: 28px; }
.feature-strip .container { display: grid; min-height: 310px; grid-template-columns: repeat(3, 1fr); align-items: center; gap: 50px; }
.feature-strip .container > div { display: grid; gap: 9px; }
.feature-strip strong { color: white; font-size: 1.35rem; }
.feature-strip span { color: #cfeaf5; }
.image-copy { display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(45px, 8vw, 105px); align-items: center; }
.image-copy img { width: 100%; border-radius: var(--radius); box-shadow: var(--shadow); }
.programme-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; align-items: stretch; }
.programme-card { padding: clamp(28px, 4vw, 48px); background: white; border: 1px solid var(--line); border-radius: var(--radius); }
.programme-card.featured { background: var(--navy); color: white; transform: translateY(-12px); }
.programme-card.featured h2 { color: white; }
.programme-icon { display: inline-grid; width: 44px; height: 44px; place-items: center; margin-bottom: 25px; border-radius: 50%; background: var(--sky); color: var(--blue); font-size: .77rem; font-weight: 800; }
.programme-card > p { color: var(--blue); font-weight: 750; }
.programme-card ul { padding-left: 20px; color: var(--muted); }
.programme-card.featured ul { color: #dcecf4; }
.data-note { margin: 30px 0 0; color: var(--muted); font-size: .82rem; text-align: center; }
.process-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 90px; }
.steps { margin: 0; padding: 0; list-style: none; }
.steps li { display: grid; grid-template-columns: 58px 1fr; gap: 20px; padding: 0 0 30px; }
.steps li + li { padding-top: 30px; border-top: 1px solid var(--line); }
.steps span { color: var(--cyan); font-size: .8rem; font-weight: 800; }
.steps h3 { margin-bottom: 8px; }
.steps p { color: var(--muted); }

/* Galleries and profiles */
.gallery-section { padding-bottom: clamp(76px, 9vw, 132px); }
.gallery-grid { display: grid; grid-template-columns: 1.45fr 1fr; grid-template-rows: repeat(2, minmax(220px, 330px)); gap: 17px; }
.gallery-grid figure { margin: 0; overflow: hidden; border-radius: 18px; }
.gallery-grid .gallery-large { grid-row: 1 / 3; }
.gallery-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s ease; }
.gallery-grid figure:hover img { transform: scale(1.035); }
.skill-list { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 60px; }
.skill-list > div { display: grid; grid-template-columns: 50px 1fr; gap: 10px; padding: 26px 0; border-top: 1px solid var(--line); }
.skill-list span { color: var(--cyan); font-size: .78rem; font-weight: 800; }
.skill-list h3 { margin: 0; }
.schedule-block { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(50px, 8vw, 110px); align-items: center; }
.schedule-list > div { display: flex; align-items: baseline; justify-content: space-between; gap: 25px; padding: 22px 0; border-bottom: 1px solid var(--line); }
.schedule-list strong { color: var(--navy); font-size: 1.25rem; }
.schedule-list span { color: var(--blue); font-weight: 700; }
.option-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px; align-items: stretch; }
.option-card { padding: clamp(34px, 5vw, 65px); border-radius: var(--radius); background: var(--white); box-shadow: var(--shadow); }
.option-card.option-image { padding: 0; overflow: hidden; }
.option-card.option-image img { width: 100%; height: 100%; min-height: 480px; object-fit: cover; }
.check-list { padding: 0; list-style: none; }
.check-list li { position: relative; padding: 12px 0 12px 31px; border-bottom: 1px solid var(--line); }
.check-list li::before { position: absolute; left: 0; color: var(--cyan); content: "✓"; font-weight: 900; }
.teacher-stack { display: grid; gap: 100px; }
.teacher-profile { display: grid; grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr); gap: clamp(45px, 8vw, 105px); align-items: center; }
.teacher-profile.reverse .teacher-photo { order: 2; }
.teacher-photo { overflow: hidden; border-radius: var(--radius); background: var(--sky); box-shadow: var(--shadow); }
.teacher-photo img { width: 100%; aspect-ratio: .77; object-fit: cover; }
.qualification-list { display: grid; gap: 10px; padding: 0; list-style: none; }
.qualification-list li { padding: 11px 0 11px 28px; border-bottom: 1px solid var(--line); position: relative; }
.qualification-list li::before { position: absolute; left: 0; color: var(--cyan); content: "—"; font-weight: 900; }

/* Contact and CTA */
.contact-hero { padding: clamp(100px, 12vw, 175px) 0 clamp(70px, 9vw, 115px); background: linear-gradient(135deg, var(--sky), white 70%); }
.contact-hero h1 { max-width: 980px; }
.contact-hero p:last-child { max-width: 720px; color: var(--muted); font-size: 1.15rem; }
.contact-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 70px; }
.contact-primary { padding: clamp(35px, 5vw, 65px); border-radius: var(--radius); background: var(--sky); }
.contact-phone { display: inline-block; margin-bottom: 28px; color: var(--navy); font-size: clamp(2rem, 4vw, 3.4rem); font-weight: 760; line-height: 1; letter-spacing: -.04em; text-decoration: none; }
.contact-details article { display: grid; grid-template-columns: 52px 1fr; gap: 20px; padding: 34px 0; border-bottom: 1px solid var(--line); }
.contact-details article:first-child { padding-top: 0; }
.contact-details span { color: var(--cyan); font-size: .8rem; font-weight: 800; }
.contact-details h2 { font-size: 1.45rem; }
.contact-details address { color: var(--muted); }
.map-band { padding: 70px 0; background: var(--navy); color: white; }
.map-copy { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.map-copy h2 { margin: 0; color: white; }
.cta-section { padding-top: 20px; }
.cta-card { display: flex; align-items: center; justify-content: space-between; gap: 55px; padding: clamp(38px, 6vw, 75px); border-radius: var(--radius); background: linear-gradient(130deg, var(--navy), #075f91); color: white; box-shadow: var(--shadow); }
.cta-card h2 { max-width: 720px; color: white; }
.cta-card p { max-width: 650px; color: #d6ecf5; }
.cta-actions { display: grid; flex: 0 0 auto; justify-items: center; gap: 17px; }
.text-link-light { color: white; font-weight: 750; text-decoration: none; }

/* Complete migrated content */
.full-content-section { background: linear-gradient(180deg, var(--white), #f7fbfd); }
.full-content { display: grid; }
.legacy-section { display: grid; grid-template-columns: minmax(250px, .72fr) minmax(0, 1.28fr); gap: clamp(42px, 8vw, 105px); padding: clamp(55px, 7vw, 90px) 0; border-top: 1px solid var(--line); }
.legacy-section:first-child { border-top: 0; padding-top: 0; }
.legacy-section-heading { display: grid; grid-template-columns: 38px 1fr; gap: 15px; align-items: start; }
.legacy-section-heading > span { padding-top: 10px; color: var(--cyan); font-size: .72rem; font-weight: 850; letter-spacing: .12em; }
.legacy-section-heading h2 { font-size: clamp(1.8rem, 3vw, 3rem); }
.legacy-section-heading h3 { color: var(--blue); font-size: 1.1rem; letter-spacing: 0; }
.legacy-section-body { min-width: 0; color: var(--muted); }
.legacy-section-body p { max-width: 850px; }
.full-list { display: grid; gap: 0; margin: 24px 0; padding: 0; list-style: none; }
.full-list li { position: relative; padding: 15px 0 15px 31px; border-bottom: 1px solid var(--line); }
.full-list li::before { position: absolute; top: 15px; left: 0; color: var(--cyan); content: "—"; font-weight: 900; }
.full-list strong { color: var(--navy); }
.legacy-subsection { margin-top: 36px; padding: 30px; border-radius: 16px; background: var(--sky); }
.legacy-subsection h3 { font-size: 1.35rem; }
.legacy-note { margin-top: 28px !important; padding: 22px 26px; border-left: 4px solid var(--cyan); background: var(--sky); color: var(--navy); font-weight: 680; }
.table-scroll { max-width: 100%; margin: 28px 0; overflow-x: auto; border: 1px solid var(--line); border-radius: 14px; background: white; }
.table-scroll table { width: 100%; min-width: 820px; border-collapse: collapse; font-size: .84rem; line-height: 1.45; }
.table-scroll th { padding: 17px 15px; background: var(--navy); color: white; text-align: left; }
.table-scroll td { padding: 16px 15px; border-bottom: 1px solid var(--line); vertical-align: top; }
.table-scroll tr:last-child td { border-bottom: 0; }

/* Footer */
.site-footer { position: relative; z-index: 2; margin-top: 0; padding-top: 82px; background: var(--navy-deep); color: #bcd3df; }
.footer-wave { position: absolute; z-index: -1; top: -71px; right: 0; left: 0; height: 72px; background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 480 72' preserveAspectRatio='none'%3E%3Cpath d='M0 38C40 8 80 8 120 38S200 68 240 38S320 8 360 38S440 68 480 38V72H0Z' fill='%23031d32'/%3E%3C/svg%3E") repeat-x bottom/480px 72px; pointer-events: none; }
.footer-grid { display: grid; grid-template-columns: 1.25fr .8fr .7fr 1.05fr; gap: 55px; padding-bottom: 55px; }
.footer-brand img { width: 86px; margin-bottom: 20px; }
.footer-brand p { max-width: 280px; }
.footer-phone { color: white; font-weight: 780; text-decoration: none; }
.site-footer h2 { color: white; font-size: 1rem; letter-spacing: .02em; }
.site-footer ul { margin: 0; padding: 0; list-style: none; }
.site-footer li { margin: 9px 0; }
.site-footer li a { color: #bcd3df; font-size: .87rem; text-decoration: none; }
.site-footer li a:hover { color: white; }
.footer-online { display: inline-flex; align-items: center; gap: 8px; color: #d8f5ff; font-size: .87rem; font-weight: 720; }
.footer-online::before { width: 7px; height: 7px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 4px rgba(25,168,213,.12); content: ""; }
.site-footer .footer-online-group>ul{margin:.4rem 0 0 15px;padding-left:12px;border-left:1px solid rgba(188,211,223,.24)}
.site-footer .footer-online-group>ul li{margin:5px 0}
.site-footer .footer-online-group>ul a{font-size:.8rem}

/* Russian online-course preview pages. */
.online-course-hero .hero-overlay{background:linear-gradient(90deg,rgba(2,25,43,.9),rgba(4,48,77,.58) 58%,rgba(1,22,38,.25))}
.online-course-section{padding:clamp(4rem,8vw,7.5rem) 0;background:linear-gradient(180deg,#fff 0%,var(--soft) 100%)}
.online-course-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:center;gap:clamp(2.5rem,7vw,7rem)}
.online-course-photo{position:relative;margin:0;overflow:hidden;border-radius:clamp(1.3rem,3vw,2.2rem);box-shadow:var(--shadow)}
.online-course-photo::after{position:absolute;inset:0;border:1px solid rgba(255,255,255,.42);border-radius:inherit;content:"";pointer-events:none}
.online-course-photo img{width:100%;aspect-ratio:1.3;object-fit:cover}
.online-course-copy{max-width:660px}
.online-course-copy h2{font-size:clamp(2.25rem,4.5vw,4.2rem)}
.online-course-lead{color:var(--navy);font-size:clamp(1.15rem,1.8vw,1.45rem);font-weight:650;line-height:1.55}
.online-course-copy>p:not(.eyebrow):not(.online-course-lead){color:var(--muted);font-size:1.04rem}
.online-course-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.4rem;margin-top:2rem}
.online-course-phone{display:grid;color:var(--navy);line-height:1.2;text-decoration:none}
.online-course-phone span{color:var(--muted);font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.online-course-phone strong{margin-top:.28rem;font-size:1.08rem}
.online-course-email{display:inline-block;margin-top:1.2rem;color:var(--blue);font-weight:750;text-underline-offset:.25em}
.footer-cta { padding: 25px; border: 1px solid rgba(255,255,255,.13); border-radius: 16px; }
.footer-cta p { font-size: .88rem; }
.footer-bottom { display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:25px 0;border-top:1px solid rgba(255,255,255,.1);font-size:.78rem; }
.footer-bottom a{color:#fff;font-weight:700;text-underline-offset:.2em}

/* Motion */
.reveal { opacity: 1; transform: none; }

@media (max-width: 1180px) {
  .desktop-nav { gap: 13px; }
  .desktop-nav a { font-size: .72rem; }
  .phone-link { font-size:.76rem; }
  .header-shell { gap: 16px; }
}

@media (max-width:1120px){
  .desktop-nav{display:none}
  .header-shell{grid-template-columns:1fr auto}
  .menu-toggle{display:block}
}

@media (max-width: 960px) {
  :root { --header: 74px; }
  .desktop-nav { display: none; }
  .header-shell { grid-template-columns: 1fr auto; }
  .menu-toggle { display: block; }
  .course-grid, .value-grid, .feature-strip .container, .programme-grid { grid-template-columns: 1fr; }
  .course-grid { max-width: 680px; margin: auto; }
  .value-grid { gap: 35px; }
  .topic-grid { grid-template-columns: repeat(2, 1fr); }
  .feature-strip .container { padding: 70px 0; }
  .programme-grid { gap: 16px; }
  .programme-card.featured { transform: none; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
  .online-course-grid{grid-template-columns:1fr;gap:2.5rem}
  .online-course-photo{max-width:760px}
}

@media (max-width: 760px) {
  .container { width: min(calc(100% - 32px), var(--container)); }
  .section { padding: 72px 0; }
  .brand-copy { display: none; }
  .phone-link { font-size:.74rem; }
  .language-switcher { display:none; }
  .mobile-language-switcher{display:block}
  .hero { min-height: calc(100svh - var(--header)); }
  .hero-content { padding: 70px 0 190px; }
  .hero-overlay { background: linear-gradient(90deg, rgba(2,25,43,.87), rgba(2,25,43,.42)), linear-gradient(0deg,rgba(2,25,43,.65),transparent); }
  .hero-facts { width: 100%; grid-template-columns: repeat(3, 1fr); }
  .hero-facts > div { min-height: 105px; display: grid; gap: 7px; padding: 18px 14px; text-align: center; }
  .hero-facts strong { font-size: 1.45rem; }
  .hero-facts span { font-size: .68rem; }
  .inner-hero { min-height: 570px; }
  .inner-hero-content { padding: 90px 0 70px; }
  .split-heading, .two-column, .image-copy, .process-grid, .schedule-block, .option-grid, .teacher-profile, .contact-grid { grid-template-columns: 1fr; gap: 38px; }
  .legacy-section { grid-template-columns: 1fr; gap: 25px; }
  .legacy-section-heading { grid-template-columns: 32px 1fr; }
  .split-heading > div:last-child, .two-column > div:last-child { padding-top: 0; }
  .parallax-band { background-attachment: scroll; }
  .parallax-band .container { min-height: 380px; flex-direction: column; align-items: flex-start; justify-content: center; }
  .skill-list { grid-template-columns: 1fr; }
  .gallery-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 360px 190px; }
  .gallery-grid .gallery-large { grid-column: 1 / 3; grid-row: 1; }
  .option-grid.reverse .option-image { order: 2; }
  .option-card.option-image img { min-height: 330px; }
  .teacher-profile.reverse .teacher-photo { order: 0; }
  .teacher-photo { max-width: 520px; }
  .contact-phone { overflow-wrap: anywhere; }
  .map-copy, .cta-card { align-items: flex-start; flex-direction: column; }
  .cta-actions { justify-items: start; }
  .footer-grid { grid-template-columns: 1fr; gap: 38px; }
  .footer-grid > div:nth-child(2), .footer-grid > div:nth-child(3) { display: block; }
  .footer-bottom{align-items:flex-start;flex-direction:column}
}

@media (max-width: 390px) {
  body { font-size: 16px; }
  .header-shell { width: calc(100% - 22px); }
  .brand-mark{width:64px;height:54px}.brand-mark img{width:156px;height:54px}
  .header-actions { gap: 7px; }
  .phone-link { font-size:.66rem;letter-spacing:-.02em; }
  .mobile-language-switcher summary{width:38px;height:38px}
  .menu-toggle{width:40px;height:40px}
  .hero-actions .button { width: 100%; }
  .hero-facts span { display: none; }
  .hero-facts > div { min-height: 76px; }
  .hero-content { padding-bottom: 125px; }
  .topic-grid { grid-template-columns: 1fr; }
  .gallery-grid { grid-template-rows: 300px 150px; gap: 9px; }
  .programme-card, .option-card { padding: 28px 23px; }
  .legacy-subsection { padding: 24px 19px; }
  .contact-primary { padding: 30px 22px; }
  .cta-card { padding: 34px 23px; }
  .online-course-actions .button{width:100%}
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .hero-media, .inner-hero-media { transform: scale(1.04); }
  .reveal { opacity: 1; transform: none; }
  .parallax-band, .feature-strip { background-attachment: scroll; }
}
/* Exact Russian homepage migration. The copy mirrors the legacy WordPress page. */
.legacy-home-section{padding:clamp(4rem,8vw,7rem) 0;background:#fff}
.legacy-home-heading{padding:clamp(4rem,7vw,6rem) 0 1.25rem;text-align:center}
.legacy-home-heading h2{margin:0;font-size:clamp(2.8rem,5.6vw,5.3rem)}
.legacy-home-heading p{margin:.2rem 0 0;color:var(--muted);font-size:clamp(1.15rem,2vw,1.6rem);font-weight:650;letter-spacing:.04em}
.legacy-home-story-section{padding-top:clamp(2rem,4vw,4rem)}
.home-story-container{width:min(calc(100% - 48px),1380px)}
.legacy-home-split{display:grid;align-items:start;gap:clamp(2.5rem,6vw,6.5rem)}
.legacy-home-split-image-left{grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr)}
.legacy-home-split-image-right{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr)}
.legacy-home-media{position:sticky;top:calc(var(--header) + 2rem);margin:0;overflow:hidden;border-radius:1.25rem;box-shadow:0 1.5rem 4rem rgba(4,40,67,.16)}
.legacy-home-media img{display:block;width:100%;height:auto}
.legacy-home-copy h2{margin:0 0 1.25rem;font-size:clamp(2rem,4vw,3.5rem);line-height:1.08}
.legacy-home-copy h3{margin:2rem 0 .75rem;font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.25}
.legacy-home-copy p,.legacy-home-copy li,.legacy-home-benefits dd{font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.75;color:var(--muted)}
.legacy-home-copy p{margin:.75rem 0}
.legacy-home-course{background:var(--soft)}
.legacy-home-split-image-right .legacy-home-copy{order:1}
.legacy-home-split-image-right .legacy-home-media{order:2}
.legacy-home-benefits{display:grid;gap:1rem;margin:1.25rem 0 0}
.legacy-home-benefits div{padding:1.1rem 1.2rem;border-left:3px solid var(--cyan);background:var(--soft)}
.legacy-home-benefits dt{font-weight:800;color:var(--ink);font-size:1.05rem}
.legacy-home-benefits dd{margin:.25rem 0 0}
.legacy-home-list{display:grid;gap:.75rem;margin:1rem 0;padding-left:1.35rem}
.legacy-home-list li{padding-left:.35rem}
.legacy-home-list li::marker{color:var(--cyan);font-weight:800}
.legacy-home-stats{padding:clamp(5rem,10vw,8rem) 0;background:linear-gradient(rgba(1,28,48,.58),rgba(1,28,48,.72)),url('/assets/images/home-bg-prlx.jpg') center/cover fixed;color:#fff}
.legacy-home-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;text-align:center}
.legacy-home-stats-grid div{display:grid;min-height:230px;gap:.75rem;place-content:center;justify-items:center;padding:1.5rem;border:1px solid rgba(255,255,255,.28);border-radius:var(--radius);background:rgba(3,35,57,.34);backdrop-filter:blur(9px)}
.legacy-home-stats-grid strong{font-family:var(--font);font-size:clamp(3rem,5.3vw,5.2rem);line-height:1;color:#fff}
.legacy-home-stats-grid span{max-width:13rem;font-size:.8rem;font-weight:800;letter-spacing:.1em;color:#dff5ff}
.legacy-home-services{padding:clamp(5rem,10vw,8rem) 0;background:linear-gradient(rgba(0,39,67,.35),rgba(0,39,67,.35)),url('/assets/images/home-bg-prlx.jpg') center/cover fixed}
.legacy-home-services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.legacy-home-services-grid div{display:grid;place-items:center;align-content:center;gap:1.2rem;min-height:13rem;padding:1.5rem;text-align:center;background:rgba(255,255,255,.9);backdrop-filter:blur(6px)}
.legacy-home-services-grid span{font-size:2rem;color:var(--cyan)}
.legacy-home-services-grid strong{font-size:.95rem;line-height:1.45}
.legacy-home-contact{padding:clamp(5rem,10vw,8rem) 0;background:linear-gradient(90deg,rgba(0,31,54,.78),rgba(0,31,54,.22)),url('/assets/images/home-contact-bg.jpg') center/cover fixed;color:#fff}
.legacy-home-contact p{margin:.25rem 0;font-family:var(--font);font-size:clamp(1.5rem,3vw,2.5rem);font-weight:720;line-height:1.2}
.legacy-home-contact .button{margin-top:1.75rem}
@media (max-width:900px){.legacy-home-split{grid-template-columns:1fr}.legacy-home-split-image-right .legacy-home-copy,.legacy-home-split-image-right .legacy-home-media{order:initial}.legacy-home-media{position:static;max-width:720px}.legacy-home-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.hero-content-simple{padding:70px 0}.hero-content-simple h1{font-size:clamp(2.7rem,14vw,4.5rem)}.legacy-home-section{padding:3.5rem 0}.legacy-home-heading{padding:3.5rem 0 1rem}.legacy-home-story-section{padding-top:1.75rem}.home-story-container{width:min(calc(100% - 32px),1380px)}.legacy-home-split{gap:2rem}.legacy-home-stats-grid{grid-template-columns:1fr;gap:1rem}.legacy-home-stats{background-attachment:scroll}.legacy-home-stats-grid div{min-height:190px}.legacy-home-contact{background-attachment:scroll}}

/* Exact Russian course-page migrations. */
.legacy-course-section{padding:clamp(4rem,8vw,7rem) 0;background:#fff}
.legacy-course-section>.container{width:min(calc(100% - 48px),1360px)}
.legacy-course-title{max-width:850px;margin-bottom:clamp(2.5rem,5vw,4.5rem)}
.legacy-course-title h2{margin:0;font-size:clamp(2rem,4vw,3.7rem)}
.legacy-course-chapter{padding:clamp(2rem,4vw,3.5rem) 0;border-top:1px solid var(--line)}
.legacy-course-chapter-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,5vw,5rem)}
.legacy-course-copy h2{font-size:clamp(1.9rem,3vw,3rem)}
.legacy-course-copy h3{display:flex;align-items:flex-start;gap:1rem;margin:0 0 1.25rem;font-size:clamp(1.45rem,2.5vw,2.25rem)}
.legacy-course-copy h3 span{flex:0 0 auto;display:grid;width:2.6rem;height:2.6rem;place-items:center;border-radius:50%;background:var(--navy);color:#fff;font-size:.78rem;letter-spacing:.06em}
.legacy-course-copy p,.legacy-course-copy li{color:var(--muted);font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.75}
.legacy-course-copy-wide{max-width:1000px}
.legacy-course-media{margin:0;overflow:hidden;border-radius:1.25rem;box-shadow:var(--shadow)}
.legacy-course-media img{display:block;width:100%;height:auto}
.inner-hero-content-nautical{text-align:center;justify-items:center}
.inner-hero-content-nautical h1{margin-inline:auto}
.course-story-row{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:start;gap:clamp(2.5rem,5vw,5.5rem)}
.course-story-media{position:sticky;top:calc(var(--header) + 2rem);width:100%}
.legacy-certificate{display:grid;min-height:clamp(330px,35vw,500px);place-items:center;padding:clamp(1.25rem,3vw,2.5rem);background:linear-gradient(145deg,#e6f4fa,#fff)}
.legacy-certificate img{border-radius:.5rem}
.course-story-photo img{aspect-ratio:4/3;object-fit:cover}
.legacy-course-chapter-highlight{margin-block:2rem;padding:clamp(2rem,5vw,4rem);border:0;border-radius:var(--radius);background:var(--navy);color:#fff}
.legacy-course-chapter-highlight h3,.legacy-course-chapter-highlight p{color:#fff}
.legacy-course-chapter-highlight .legacy-course-copy h3 span{background:var(--cyan);color:var(--navy-deep)}
.legacy-course-chapter-highlight .legacy-course-copy{margin-inline:auto;text-align:center}
.legacy-course-chapter-highlight .legacy-course-copy h3{justify-content:center}
.legacy-course-disciplines .legacy-course-copy{margin-inline:auto;text-align:center}
.legacy-course-disciplines .legacy-course-copy h3{justify-content:center}
.legacy-discipline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.75rem 0 0;padding:0;list-style:none;counter-reset:disciplines}
.legacy-discipline-grid li{position:relative;min-height:100%;padding:3.6rem 1.25rem 1.25rem;border:1px solid var(--line);border-radius:1rem;background:var(--soft);counter-increment:disciplines;text-align:center}
.legacy-discipline-grid li::before{position:absolute;top:1.15rem;left:50%;color:var(--blue);font-weight:800;content:counter(disciplines,decimal-leading-zero);transform:translateX(-50%)}
.legacy-discipline-grid li{overflow:hidden;box-shadow:0 8px 24px rgba(4,41,66,.04);transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,background-color .28s ease}
.legacy-discipline-grid li:hover{transform:translateY(-6px);border-color:rgba(25,168,213,.55);background:#fff;box-shadow:0 18px 42px rgba(4,41,66,.12)}
.legacy-discipline-grid li:hover::before{animation:course-number-nudge .45s ease}
.legacy-course-trial{position:relative;isolation:isolate;overflow:hidden;margin-top:clamp(2rem,5vw,4rem);padding:clamp(2.5rem,6vw,5.5rem);border:0;border-radius:clamp(1.5rem,3vw,2.5rem);background:linear-gradient(135deg,#062d4b 0%,#0b78b8 100%);box-shadow:0 28px 70px rgba(3,45,75,.22)}
.legacy-course-trial::after{position:absolute;z-index:-1;right:-8rem;bottom:-10rem;width:25rem;height:25rem;border:1px solid rgba(255,255,255,.17);border-radius:50%;box-shadow:0 0 0 3rem rgba(255,255,255,.04),0 0 0 6rem rgba(255,255,255,.03);content:""}
.legacy-course-trial .legacy-course-copy{max-width:900px;margin:auto;text-align:center}
.legacy-course-trial h3{justify-content:center;color:#fff}
.legacy-course-trial p{color:#e5f5fc;font-size:clamp(1.05rem,1.4vw,1.2rem)}
.legacy-course-trial .legacy-course-copy h3 span{background:var(--cyan);color:var(--navy-deep)}
.nautical-divider-course{margin:.6rem auto 1.8rem}
.nautical-divider-course .nautical-wave{width:clamp(5rem,12vw,10rem)}
.legacy-certificate-section{padding:clamp(4rem,8vw,7rem) 0;background:var(--soft)}
.legacy-certificate-section .legacy-course-media{width:100%;max-width:600px;justify-self:center}
.certificate-faq-section{padding:clamp(4.5rem,8vw,8rem) 0;background:#fff}
.certificate-faq-shell{width:min(calc(100% - 48px),1360px)}
.certificate-faq-heading{max-width:1020px;margin:0 auto clamp(2.5rem,5vw,4.5rem);text-align:center}
.certificate-faq-heading h2{font-size:clamp(1.9rem,3vw,3rem)}
.certificate-faq-heading>p:not(.eyebrow){max-width:920px;margin-inline:auto;color:var(--muted);font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.75}
.certificate-faq-heading .certificate-faq-lead{color:var(--navy);font-size:clamp(1.1rem,1.65vw,1.35rem)}
.certificate-answer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.certificate-answer-grid article{position:relative;overflow:hidden;min-height:260px;padding:clamp(1.7rem,3vw,2.7rem);border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,#fff,var(--soft));box-shadow:0 14px 38px rgba(4,41,66,.07)}
.certificate-answer-grid article>span{display:grid;width:2.55rem;height:2.55rem;place-items:center;margin-bottom:1.5rem;border-radius:50%;background:var(--navy);color:#fff;font-size:.72rem;font-weight:850;letter-spacing:.06em}
.certificate-answer-grid h3{font-size:clamp(1.35rem,2vw,1.8rem)}
.certificate-answer-grid p{margin:0;color:var(--muted);font-size:1rem;line-height:1.72}
.certificate-combination{margin-top:clamp(3.5rem,7vw,6.5rem);padding-top:clamp(2.5rem,5vw,4.5rem);border-top:1px solid var(--line)}
.certificate-combination>h3,.certificate-documents h3{margin-bottom:1.5rem;font-size:clamp(1.8rem,3vw,2.7rem);text-align:center}
.certificate-combination-lead{max-width:1040px;margin:0 auto clamp(2.5rem,5vw,4rem);color:var(--navy);font-size:clamp(1.18rem,1.8vw,1.5rem);font-weight:750;line-height:1.65;text-align:center}
.certificate-law-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
.certificate-law-grid article{padding:clamp(1.7rem,3vw,2.7rem);border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 14px 38px rgba(4,41,66,.07)}
.certificate-law-grid h4{margin:0 0 1rem;color:var(--navy);font-size:clamp(1.25rem,1.8vw,1.6rem)}
.certificate-law-grid p{margin:0;color:var(--muted);font-size:1rem;line-height:1.72}
.certificate-documents{margin-top:clamp(2.5rem,5vw,4.5rem);padding:clamp(2rem,4vw,3.8rem);border-radius:var(--radius);background:linear-gradient(135deg,var(--navy-deep),#075681);color:#fff;box-shadow:0 24px 60px rgba(4,41,66,.18)}
.certificate-documents h3{color:#fff}
.certificate-documents>p{margin:0 0 1.4rem;color:#d8edf7;font-size:1.08rem;text-align:center}
.certificate-documents ol{display:grid;gap:.9rem;margin:0;padding:0;list-style:none;counter-reset:certificate-documents}
.certificate-documents li{position:relative;padding:1.05rem 1.2rem 1.05rem 4.2rem;border:1px solid rgba(255,255,255,.14);border-radius:1rem;background:rgba(255,255,255,.07);color:#eef9fd;line-height:1.65;counter-increment:certificate-documents}
.certificate-documents li::before{position:absolute;top:1rem;left:1.15rem;display:grid;width:2.05rem;height:2.05rem;place-items:center;border-radius:50%;background:var(--cyan);color:var(--navy-deep);font-size:.72rem;font-weight:850;content:counter(certificate-documents,decimal-leading-zero)}
.certificate-documents strong{color:#fff}
.legacy-course-services{background:linear-gradient(rgba(0,29,50,.62),rgba(0,51,82,.58)),url('/assets/images/home-bg-prlx.jpg') center/cover fixed}
.legacy-course-services .legacy-home-services-grid{gap:clamp(.8rem,2vw,1.5rem)}
.legacy-course-services .legacy-home-services-grid div{position:relative;overflow:hidden;min-height:230px;padding:clamp(2rem,3vw,3rem) 1.35rem;border:1px solid rgba(255,255,255,.42);border-radius:var(--radius);background:rgba(0,30,52,.42);color:#fff;box-shadow:0 18px 45px rgba(0,19,33,.18);backdrop-filter:blur(10px);transition:transform .3s ease,background-color .3s ease,box-shadow .3s ease}
.legacy-course-services .legacy-home-services-grid div:hover{transform:translateY(-8px);background:rgba(0,54,88,.68);box-shadow:0 26px 55px rgba(0,19,33,.3)}
.legacy-course-services .legacy-home-services-grid span{display:block;color:#dff8ff;font-size:2.5rem;line-height:1;transition:transform .35s ease}
.legacy-course-services .legacy-home-services-grid div:hover span{transform:translateY(-4px) scale(1.08)}
.legacy-course-services .legacy-home-services-grid strong{color:#fff;font-size:.92rem;letter-spacing:.04em}
@keyframes course-number-nudge{0%,100%{transform:translateX(-50%)}35%{transform:translate(-48%,-3px) rotate(4deg)}70%{transform:translate(-51%,1px) rotate(-2deg)}}
.legacy-csdd-intro{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(2rem,6vw,6rem);margin-bottom:clamp(5rem,9vw,8rem)}
.legacy-csdd-intro p{margin:0;color:var(--muted);font-size:clamp(1.25rem,2.2vw,1.85rem);line-height:1.55}
.legacy-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.legacy-course-mobile-programmes{display:none}
.legacy-course-table{width:100%;min-width:820px;border-collapse:collapse;background:#fff;font-size:.98rem}
.legacy-course-table th,.legacy-course-table td{padding:1.15rem 1.25rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
.legacy-course-table thead th{background:var(--navy);color:#fff;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}
.legacy-course-table tbody th{width:25%;background:var(--soft);color:var(--navy)}
.legacy-course-table tbody tr:last-child td{border-bottom:0}
.legacy-course-table th:last-child,.legacy-course-table td:last-child{border-right:0}
.legacy-advantages-title{margin-top:clamp(5rem,9vw,8rem)}
.legacy-csdd-advantages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:0}
.legacy-csdd-advantages div{padding:clamp(1.5rem,3vw,2.5rem);border-radius:var(--radius);background:var(--soft)}
.legacy-csdd-advantages dt{margin-bottom:.65rem;color:var(--navy);font-size:1.25rem;font-weight:800}
.legacy-csdd-advantages dd{margin:0;color:var(--muted);line-height:1.7}
@media (max-width:900px){.legacy-course-chapter-split,.legacy-csdd-intro{grid-template-columns:1fr}.course-story-media{position:static;max-width:760px}.legacy-discipline-grid{grid-template-columns:1fr}.legacy-csdd-advantages{grid-template-columns:1fr}.legacy-csdd-intro .legacy-course-media{max-width:620px}.legacy-course-services .legacy-home-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.legacy-course-services .legacy-home-services-grid div{min-height:12rem;border-radius:1.5rem}.certificate-answer-grid{grid-template-columns:1fr}.certificate-answer-grid article{min-height:0}}
@media (max-width:760px){.legacy-table-wrap{display:none}.legacy-course-mobile-programmes{display:grid;gap:1rem}.legacy-course-mobile-programmes article{padding:1.35rem;border:1px solid var(--line);border-radius:1rem;background:#fff;box-shadow:0 10px 32px rgba(4,41,66,.08)}.legacy-course-mobile-programmes h3{margin:0;color:var(--navy);font-size:1.3rem}.legacy-course-mobile-programmes article>p{margin:.2rem 0 1rem;color:var(--blue);font-size:.85rem;font-weight:750}.legacy-course-mobile-programmes dl{display:grid;gap:.55rem;margin:0}.legacy-course-mobile-programmes dl div{display:grid;grid-template-columns:minmax(92px,.75fr) minmax(0,1.25fr);gap:.75rem;padding-top:.55rem;border-top:1px solid var(--line)}.legacy-course-mobile-programmes dt{color:var(--muted);font-size:.77rem;font-weight:750}.legacy-course-mobile-programmes dd{margin:0;color:var(--ink);font-size:.9rem;font-weight:650;text-align:right}}
@media (max-width:560px){.legacy-course-section,.legacy-certificate-section,.certificate-faq-section{padding:3.5rem 0}.legacy-course-section>.container,.certificate-faq-shell{width:min(calc(100% - 32px),1360px)}.legacy-course-copy h3{display:block}.legacy-course-copy h3 span{margin:0 auto 1rem}.legacy-course-chapter-highlight{margin-inline:-10px;padding:1.5rem}.legacy-course-trial{margin-inline:-6px;padding:2rem 1.2rem}.legacy-course-trial h3{display:flex;flex-direction:column;align-items:center}.legacy-course-services{background-attachment:scroll}.legacy-course-services .legacy-home-services-grid{grid-template-columns:1fr;gap:.85rem}.legacy-course-services .legacy-home-services-grid div{min-height:9rem;padding:1.5rem}.legacy-course-services .legacy-home-services-grid span{font-size:2rem}.legacy-course-services .legacy-home-services-grid strong{font-size:.82rem}.certificate-faq-heading{text-align:left}.certificate-answer-grid article{padding:1.45rem}.certificate-combination-lead,.certificate-combination>h3,.certificate-documents h3{text-align:left}.certificate-documents{margin-inline:-6px;padding:1.55rem 1.15rem}.certificate-documents>p{text-align:left}.certificate-documents li{padding:1rem 1rem 1rem 3.65rem}.certificate-documents li::before{left:.9rem}}
@media (prefers-reduced-motion:reduce){.legacy-discipline-grid li,.legacy-course-services .legacy-home-services-grid div,.legacy-course-services .legacy-home-services-grid span{transition:none}.legacy-discipline-grid li:hover::before{animation:none}}

/* Extended content for the skipper course. */
.course-draft-additions{padding:clamp(4rem,8vw,7rem) 0;background:linear-gradient(150deg,var(--soft) 0%,#fff 48%,#eef7fb 100%)}
.course-draft-shell{width:min(calc(100% - 48px),1360px)}
.course-draft-additions :is(h2,h3,strong,a){color:var(--navy)}
.course-draft-additions :is(p,li,span,em){color:var(--muted)}
.course-draft-additions .eyebrow{color:var(--blue)}
.course-draft-intro{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);align-items:center;gap:clamp(2.5rem,6vw,6rem)}
.course-draft-intro-copy h2{max-width:820px;font-size:clamp(2.1rem,3.8vw,3.7rem)}
.course-draft-lead{font-size:clamp(1.2rem,1.8vw,1.55rem);font-weight:700;line-height:1.6}
.course-draft-intro-copy>p:not(.eyebrow):not(.course-draft-lead){font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.75}
.course-draft-intro-media{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:clamp(1.5rem,3vw,2.5rem);box-shadow:var(--shadow)}
.course-draft-intro-media img{display:block;width:100%;min-height:540px;object-fit:cover}
.course-draft-facts-heading{margin:clamp(3.5rem,7vw,6rem) 0 clamp(1.5rem,3vw,2.5rem);text-align:center}
.course-draft-facts-heading h2{margin:0;font-size:clamp(2rem,3.5vw,3.5rem)}
.course-draft-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:0 0 clamp(3.5rem,7vw,6rem)}
.course-draft-facts article{display:grid;min-height:220px;align-content:center;gap:.75rem;padding:clamp(1.5rem,3vw,2.25rem);border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.92);box-shadow:0 12px 34px rgba(5,50,80,.07)}
.course-draft-facts strong{font-size:clamp(1.6rem,2.5vw,2.45rem);line-height:1.05}
.course-draft-facts span{font-size:.96rem;line-height:1.6}
.course-draft-section,.course-draft-path{margin-top:clamp(4.5rem,9vw,8rem)}
.course-draft-heading{max-width:900px;margin-bottom:clamp(2rem,4vw,3.5rem)}
.course-draft-heading h2{font-size:clamp(2.2rem,4vw,4rem)}
.course-draft-explain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.course-draft-explain-grid article,.course-draft-benefit-grid article{padding:clamp(1.6rem,3vw,2.7rem);border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 15px 40px rgba(5,50,80,.07)}
.course-draft-explain-grid article>span{display:grid;width:2.75rem;height:2.75rem;place-items:center;margin-bottom:1.35rem;border:1px solid rgba(11,120,184,.35);border-radius:50%;background:#eef8fc;color:var(--navy);font-size:.76rem;font-weight:850}
.course-draft-explain-grid h3,.course-draft-benefit-grid h3{font-size:clamp(1.35rem,2vw,1.85rem)}
.course-draft-explain-grid p,.course-draft-benefit-grid p{margin-bottom:0;font-size:1rem;line-height:1.72}
.course-draft-comparison{padding:clamp(2rem,5vw,4rem);border:1px solid var(--line);border-radius:clamp(1.5rem,3vw,2.5rem);background:rgba(255,255,255,.78)}
.course-draft-benefit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.course-draft-benefit-grid article{box-shadow:none}
.course-draft-path ol{display:grid;gap:0;margin:0;padding:0;list-style:none}
.course-draft-path li{position:relative;display:grid;grid-template-columns:auto 1fr;gap:1.5rem;padding:0 0 2rem}
.course-draft-path li:not(:last-child)::after{position:absolute;top:3.2rem;bottom:.25rem;left:1.48rem;width:1px;background:rgba(11,120,184,.3);content:""}
.course-draft-path li>span{z-index:1;display:grid;width:3rem;height:3rem;place-items:center;border:1px solid rgba(11,120,184,.38);border-radius:50%;background:#fff;color:var(--navy);font-size:.78rem;font-weight:850}
.course-draft-path h3{margin:.15rem 0 .45rem;font-size:clamp(1.3rem,2vw,1.75rem)}
.course-draft-path p{max-width:780px;margin:0;line-height:1.7}
.course-draft-path-action{margin-top:2rem!important}
.course-draft-path-button{display:inline-flex;align-items:center;justify-content:center;padding:1rem 1.35rem;border:1px solid rgba(11,120,184,.35);border-radius:999px;background:#e5f5fb;font-weight:850;text-decoration:none;transition:background-color .2s,border-color .2s,transform .2s}
.course-draft-path-button:hover,.course-draft-path-button:focus-visible{border-color:var(--blue);background:#d6f0fa;transform:translateY(-2px)}
.course-draft-start{display:grid;grid-template-columns:1fr;gap:clamp(1.75rem,4vw,3rem);margin-top:clamp(4rem,8vw,7rem);padding:clamp(2rem,5vw,4.5rem);border:2px solid rgba(11,120,184,.28);border-radius:clamp(1.5rem,3vw,2.5rem);background:#fff;box-shadow:0 24px 60px rgba(5,50,80,.1)}
.course-draft-start-embedded{margin-bottom:clamp(4rem,8vw,7rem)}
.course-draft-start-embedded :is(h2,strong,a){color:var(--navy)}
.course-draft-start-embedded :is(p,li){color:var(--muted)}
.course-draft-start-embedded .eyebrow{color:var(--blue)}
.course-draft-start h2{font-size:clamp(2rem,3.6vw,3.6rem)}
.course-draft-start p,.course-draft-start li{font-size:1rem;line-height:1.7}
.course-draft-start ul{display:grid;gap:.55rem;padding-left:1.2rem}
.course-draft-start-phone{margin-top:1.25rem;font-weight:800}
.course-draft-start-phone a{text-decoration-thickness:1px;text-underline-offset:.2em}
.course-draft-start-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;width:min(100%,800px);text-align:center}
.course-draft-start-actions a,.course-draft-start-actions span{display:block;padding:.9rem 1rem;border:1px solid rgba(11,120,184,.3);border-radius:999px;background:#f3f9fc;font-weight:800;text-decoration:none}
.course-draft-start-actions .course-draft-button{padding:1.1rem 1.2rem;background:#e5f5fb;font-size:1.02rem}
.course-draft-start-actions a:hover,.course-draft-start-actions a:focus-visible{border-color:var(--blue);background:#d9f1fa}
.course-draft-review-note{margin-top:2rem;padding:1.5rem 1.7rem;border:2px dashed rgba(11,120,184,.45);border-radius:1.2rem;background:#f4f9fc}
.course-draft-review-note>strong{display:block;margin-bottom:.6rem;font-size:1.1rem;text-transform:uppercase}
.course-draft-review-note p{margin:.45rem 0;font-size:.92rem;line-height:1.65}
@media (max-width:1000px){.course-draft-intro{grid-template-columns:1fr}.course-draft-intro-media{max-width:820px}.course-draft-intro-media img{min-height:0}.course-draft-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.course-draft-explain-grid{grid-template-columns:1fr}}
@media (max-width:620px){.course-draft-additions{padding:3.5rem 0}.course-draft-shell{width:min(calc(100% - 32px),1360px)}.course-draft-intro{gap:2rem}.course-draft-intro-copy h2{font-size:clamp(2rem,9vw,2.75rem)}.course-draft-facts-heading{margin:3rem 0 1.5rem}.course-draft-facts{grid-template-columns:1fr;margin:0 0 3rem}.course-draft-facts article{min-height:0}.course-draft-benefit-grid{grid-template-columns:1fr}.course-draft-comparison{margin-inline:-6px;padding:1.4rem}.course-draft-path li{gap:1rem}.course-draft-start{margin-inline:-6px;padding:1.5rem 1.2rem}.course-draft-start-actions{grid-template-columns:1fr}.course-draft-review-note{padding:1.25rem}}

/* Extended CSDD course information. */
.csdd-draft-additions{padding:clamp(3.5rem,7vw,6rem) 0;background:linear-gradient(145deg,var(--soft),#fff)}
.csdd-draft-shell{width:min(calc(100% - 48px),1360px)}
.csdd-draft-additions :is(h2,h3,strong){color:var(--navy)}
.csdd-draft-additions :is(p,span){color:var(--muted)}
.csdd-draft-additions .eyebrow{color:var(--blue)}
.csdd-draft-heading{max-width:900px;margin-bottom:clamp(2rem,4vw,3.5rem)}
.csdd-draft-heading h2{font-size:clamp(2.3rem,4vw,4rem)}
.csdd-draft-heading>p:not(.eyebrow){max-width:820px;font-size:clamp(1.08rem,1.5vw,1.28rem);font-weight:650;line-height:1.7}
.csdd-draft-start{position:relative;isolation:isolate;display:flex;max-width:820px;margin-inline:auto;flex-direction:column;align-items:center;overflow:hidden;padding:clamp(2rem,5vw,3.5rem);border:1px solid rgba(11,120,184,.24);border-top:5px solid var(--cyan);border-radius:clamp(1.4rem,2.5vw,2.2rem);background:linear-gradient(145deg,#fff 12%,#eef8fc 100%);box-shadow:0 22px 55px rgba(5,50,80,.12);text-align:center}
.csdd-draft-start::after{position:absolute;right:-3rem;bottom:-5rem;width:14rem;height:14rem;border:1px solid rgba(11,120,184,.12);border-radius:50%;content:"";box-shadow:0 0 0 2.2rem rgba(11,120,184,.045),0 0 0 4.4rem rgba(11,120,184,.025)}
.csdd-draft-start .eyebrow{position:relative;z-index:1;margin:0}
.csdd-draft-start .nautical-divider{position:relative;z-index:1;width:min(100%,420px);margin:.9rem auto 1.1rem}
.csdd-draft-start h3{position:relative;z-index:1;margin:0 0 .35rem;font-size:clamp(2rem,4vw,3.4rem)}
.csdd-draft-start>p:last-child{position:relative;z-index:1;margin:0;font-size:clamp(1rem,1.5vw,1.2rem);font-weight:700;line-height:1.55}
.content-update{font-weight:800}
.legacy-course-new-direction{margin:1.6rem 0 .7rem;font-size:clamp(1.25rem,1.8vw,1.6rem);line-height:1.25}
.legacy-course-addon{margin:1.8rem 0;padding:clamp(1.4rem,3vw,2rem);border:1px solid rgba(11,120,184,.28);border-left:4px solid var(--cyan);border-radius:1.1rem;background:linear-gradient(135deg,#eef8fc,#fff);box-shadow:0 14px 36px rgba(5,50,80,.08)}
.legacy-course-addon .eyebrow{margin-bottom:.55rem;color:var(--blue)}
.legacy-course-addon h4{margin:0 0 .8rem;color:var(--navy);font-size:clamp(1.35rem,2.2vw,1.9rem);line-height:1.25}
.legacy-course-addon p{margin:.6rem 0;color:var(--muted);line-height:1.7}
.legacy-course-addon-note{margin-top:1rem!important;padding-top:1rem;border-top:1px solid var(--line)}
.legacy-course-addon-note strong{color:var(--navy)}
@media (max-width:620px){.csdd-draft-additions{padding:3.25rem 0}.csdd-draft-shell{width:min(calc(100% - 32px),1360px)}.csdd-draft-start{padding:1.8rem 1.3rem}.csdd-draft-start .nautical-divider{margin:.75rem auto 1rem}}

/* Exact Russian practice and teacher pages. */
.practice-section{padding:clamp(4rem,8vw,7rem) 0;background:#fff}
.practice-section-soft{background:var(--soft)}
.practice-copy-grid{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:clamp(2rem,7vw,7rem);align-items:start;margin-bottom:clamp(3rem,6vw,5rem)}
.practice-copy-grid h2{font-size:clamp(2.2rem,4.5vw,4rem)}
.practice-feature-list{display:grid;gap:1rem;margin:0;padding:0;list-style:none}
.practice-feature-list li{padding:1.25rem 1.4rem;border-left:3px solid var(--cyan);background:var(--soft);color:var(--muted);font-size:1.05rem;line-height:1.7}
.practice-gallery{display:grid;grid-auto-flow:dense;gap:1rem}
.practice-section>.container{width:min(calc(100% - 48px),1360px)}
.practice-gallery-seven,.practice-gallery-six{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:310px;gap:1.25rem}
.practice-gallery-four{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:270px;margin-top:clamp(3rem,7vw,6rem)}
.practice-gallery figure{margin:0;overflow:hidden;border-radius:1.15rem;background:var(--soft);box-shadow:var(--shadow)}
.practice-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.practice-gallery figure:hover img{transform:scale(1.035)}
.practice-lightbox-gallery button{position:relative;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in}
.practice-lightbox-gallery button>span{position:absolute;right:1rem;bottom:1rem;display:grid;width:3rem;height:3rem;place-items:center;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:rgba(3,29,50,.62);color:#fff;font-size:1.5rem;line-height:1;opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease,background-color .25s ease;backdrop-filter:blur(8px)}
.practice-lightbox-gallery button:hover>span,.practice-lightbox-gallery button:focus-visible>span{opacity:1;transform:none}
.gallery-lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:clamp(1rem,3vw,2.5rem);border:0;background:rgba(2,18,31,.96);color:#fff}
.gallery-lightbox[open]{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(.5rem,2vw,1.5rem)}
.gallery-lightbox::backdrop{background:rgba(2,18,31,.82);backdrop-filter:blur(8px)}
.gallery-lightbox figure{display:grid;min-width:0;height:100%;max-height:calc(100dvh - 5rem);grid-template-rows:minmax(0,1fr) auto;gap:1rem;margin:0}
.gallery-lightbox figure img{width:100%;height:100%;min-height:0;object-fit:contain;user-select:none;-webkit-user-drag:none;touch-action:pan-y}
.gallery-lightbox figcaption{display:flex;justify-content:space-between;gap:1rem;color:#e1f5ff;font-size:.92rem}
.gallery-lightbox figcaption small{flex:0 0 auto;color:#9fdcf1}
.gallery-lightbox-close,.gallery-lightbox-nav{display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;cursor:pointer;transition:background-color .2s,transform .2s}
.gallery-lightbox-close svg,.gallery-lightbox-nav svg{display:block;width:1.45rem;height:1.45rem;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.gallery-lightbox-close:hover,.gallery-lightbox-nav:hover{background:rgba(25,168,213,.45);transform:scale(1.05)}
.gallery-lightbox-close{position:absolute;z-index:2;top:1rem;right:1rem;width:3rem;height:3rem}
.gallery-lightbox-nav{width:3.5rem;height:3.5rem}
.practice-gallery-tall{grid-row:span 2}
.practice-gallery-wide{grid-column:span 2}
.practice-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}
.practice-detail-card{padding:clamp(1.75rem,4vw,3.25rem);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}
.practice-detail-card>span,.local-practice-card>span{display:grid;width:3rem;height:3rem;place-items:center;margin-bottom:1.5rem;border-radius:50%;background:var(--navy);color:#fff;font-size:.8rem;font-weight:800}
.practice-detail-card h2{font-size:clamp(1.8rem,3vw,2.8rem)}
.practice-detail-card ul,.local-practice-card ul{display:grid;gap:.8rem;margin:0;padding-left:1.25rem;color:var(--muted);line-height:1.7}
.practice-dates{padding:clamp(5rem,10vw,8rem) 0;background:linear-gradient(rgba(0,39,67,.68),rgba(0,39,67,.68)),url('/assets/images/med-oc2.jpg') center/cover fixed;color:#fff}
.practice-dates h2{color:#fff;font-size:clamp(2.3rem,5vw,4.5rem)}
.practice-date-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.practice-date-grid div{display:grid;min-height:230px;gap:.75rem;place-content:center;padding:clamp(2rem,4vw,3.5rem);border:1px solid rgba(255,255,255,.42);border-radius:var(--radius);background:rgba(0,30,52,.42);text-align:center;backdrop-filter:blur(10px)}
.practice-date-grid strong{font-size:clamp(2rem,3.5vw,3.35rem);line-height:1}.practice-date-grid span{color:#d8f3ff;font-size:clamp(1rem,1.4vw,1.25rem)}
.local-practice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}
.local-practice-card{padding:clamp(1.75rem,4vw,3.25rem);border-radius:var(--radius);background:var(--soft)}
.local-practice-card h2{font-size:clamp(1.8rem,3vw,2.8rem)}
.local-practice-price{margin:2rem 0 0;padding-top:1.25rem;border-top:1px solid var(--line);color:var(--navy);font-size:1.15rem;font-weight:800}
.poster-showcase{padding:clamp(4.5rem,9vw,8rem) 0;background:linear-gradient(145deg,#eef7fb 0%,#fff 55%,#e8f4f9 100%)}
.poster-showcase-grid{display:grid;grid-template-columns:minmax(260px,.68fr) minmax(500px,.98fr);align-items:center;gap:clamp(2.5rem,5vw,5rem)}
.poster-showcase-copy{max-width:560px}
.poster-showcase-copy h2{font-size:clamp(2.3rem,4.5vw,4.5rem)}
.poster-showcase-copy h2 span{display:block;margin-top:.22em;font-size:.7em;line-height:1.12}
.poster-showcase-copy>p:not(.eyebrow){color:var(--muted);font-size:clamp(1.05rem,1.35vw,1.2rem)}
.poster-showcase-points{display:grid;gap:.8rem;margin:2rem 0;padding:0;list-style:none}
.poster-showcase-points li{position:relative;padding-left:2rem;color:var(--navy);font-weight:700}
.poster-showcase-points li::before{position:absolute;top:.2em;left:0;display:grid;width:1.35rem;height:1.35rem;place-items:center;border-radius:50%;background:var(--cyan);color:var(--navy-deep);font-size:.75rem;content:"✓"}
.poster-showcase-button{margin-top:.5rem}
.poster-showcase-hint{margin-top:1rem!important;font-size:.85rem!important}
.poster-showcase-frame{position:relative;display:block;width:100%;max-width:748px;justify-self:end;overflow:hidden;padding:0;border:10px solid #fff;border-radius:1.5rem;background:#fff;box-shadow:0 32px 80px rgba(4,41,66,.2);text-align:inherit;cursor:zoom-in;touch-action:pinch-zoom}
.poster-showcase-frame img{display:block;width:100%;height:auto}
.poster-lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:clamp(1rem,3vw,2.5rem);border:0;background:rgba(2,18,31,.96);color:#fff}
.poster-lightbox[open]{display:grid;place-items:center}
.poster-lightbox::backdrop{background:rgba(2,18,31,.82);backdrop-filter:blur(8px)}
.poster-lightbox-content{display:grid;width:min(92vw,900px);height:calc(100dvh - clamp(2rem,6vw,5rem));place-items:center;overflow:auto;overscroll-behavior:contain}
.poster-lightbox-content img{display:block;width:auto;max-width:100%;height:auto;max-height:100%;object-fit:contain;touch-action:pinch-zoom;user-select:none;-webkit-user-drag:none}
.poster-lightbox-close{position:absolute;z-index:2;top:1rem;right:1rem;display:grid;width:3.25rem;height:3.25rem;place-items:center;padding:0;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(3,29,50,.82);color:#fff;cursor:pointer;transition:background-color .2s,transform .2s}
.poster-lightbox-close svg{display:block;width:1.5rem;height:1.5rem;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.poster-lightbox-close:hover{background:var(--blue);transform:scale(1.05)}
.teachers-exact-section{padding:clamp(4rem,8vw,7rem) 0}
.teachers-exact-stack{display:grid;gap:clamp(5rem,10vw,9rem)}
.teacher-exact{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);gap:clamp(2rem,7vw,7rem);align-items:start}
.teacher-exact-reverse figure{order:2}.teacher-exact-reverse>div{order:1}
.teacher-exact figure{position:sticky;top:calc(var(--header) + 2rem);margin:0;overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow)}
.teacher-exact figure img{width:100%;max-height:740px;object-fit:cover}
.teacher-exact h2{font-size:clamp(2.5rem,5vw,4.5rem)}
.teacher-exact h3{margin-top:2.25rem;font-size:clamp(1.4rem,2vw,1.9rem)}
.teacher-exact p,.teacher-exact li{color:var(--muted);font-size:clamp(1rem,1.2vw,1.1rem);line-height:1.75}
.legacy-certificate-section .legacy-course-chapter-split{align-items:start}
.legacy-certificate-section .legacy-course-media{position:sticky;top:calc(var(--header) + 2rem)}
@media (max-width:900px){.practice-copy-grid,.teacher-exact,.poster-showcase-grid,.certificate-law-grid{grid-template-columns:1fr}.practice-gallery-seven,.practice-gallery-six{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:280px}.practice-gallery-four{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-details-grid,.local-practice-grid{grid-template-columns:1fr}.teacher-exact-reverse figure,.teacher-exact-reverse>div{order:initial}.teacher-exact figure,.legacy-certificate-section .legacy-course-media{position:static;max-width:620px}.practice-date-grid{grid-template-columns:1fr}.poster-showcase-copy{max-width:720px}.poster-showcase-frame{justify-self:center;max-width:720px}}
@media (max-width:560px){.practice-section,.teachers-exact-section{padding:3.5rem 0}.practice-section>.container{width:min(calc(100% - 32px),1360px)}.practice-gallery-seven,.practice-gallery-six,.practice-gallery-four{grid-template-columns:1fr;grid-auto-rows:310px}.practice-gallery-tall{grid-row:span 1}.practice-gallery-wide{grid-column:span 1}.practice-dates{background-attachment:scroll}.gallery-lightbox{padding:4.5rem .75rem 1rem}.gallery-lightbox[open]{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto}.gallery-lightbox figure{grid-column:1;grid-row:1}.gallery-lightbox-nav{position:static;width:3.25rem;height:3.25rem}.gallery-lightbox-prev{grid-column:1;grid-row:2;justify-self:start}.gallery-lightbox-next{grid-column:1;grid-row:2;justify-self:end}.gallery-lightbox figcaption{font-size:.82rem}.poster-showcase{padding:3.5rem 0}.poster-showcase-grid{gap:2.25rem}.poster-showcase-frame{order:1;width:calc(100% + 32px);max-width:none;margin-inline:-16px;border:0;border-radius:0;box-shadow:0 18px 45px rgba(4,41,66,.18)}.poster-showcase-copy{order:2}.poster-showcase-copy h2{font-size:clamp(2rem,10vw,3rem)}}

/* Consolidated Russian contact page and cPanel PHP form. */
.contact-simple-section{padding:clamp(4rem,8vw,7rem) 0;background:linear-gradient(135deg,#f4f9fc 0%,#fff 58%)}
.contact-simple-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.contact-simple-card h1{font-size:clamp(3rem,6vw,5.6rem)}
.contact-simple-lead{max-width:44rem;color:var(--muted);font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.55}
.contact-simple-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:2.5rem 0}
.contact-simple-links a{display:grid;gap:.35rem;padding:1.3rem;border:1px solid var(--line);border-radius:1rem;background:#fff;text-decoration:none;box-shadow:0 10px 30px rgba(5,50,80,.06)}
.contact-simple-links span{color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.contact-simple-links strong{color:var(--navy);font-size:clamp(.95rem,1.4vw,1.15rem);overflow-wrap:anywhere}
.contact-locations{display:grid;gap:1rem}
.contact-locations article{display:grid;grid-template-columns:auto 1fr;gap:1.15rem;padding:1.35rem;border-left:3px solid var(--cyan);background:#fff}
.contact-locations article>span{display:grid;width:2.6rem;height:2.6rem;place-items:center;border-radius:50%;background:var(--navy);color:#fff;font-size:.75rem;font-weight:800}
.contact-locations h2{margin:.2rem 0 .45rem;font-size:1.2rem}
.contact-locations address{color:var(--muted);line-height:1.65}
.contact-form-card{padding:clamp(1.75rem,4vw,3.25rem);border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}
.contact-form-card h2{font-size:clamp(2rem,3.5vw,3.25rem)}
.contact-form-card form{display:grid;gap:1.15rem}
.contact-form-card label{display:grid;gap:.45rem;color:var(--navy);font-size:.86rem;font-weight:750}
.contact-form-card input,.contact-form-card textarea{width:100%;padding:.85rem 1rem;border:1px solid #bdd1dc;border-radius:.75rem;background:#fbfdfe;color:var(--ink);outline:none;transition:border-color .2s,box-shadow .2s}
.contact-form-card input:focus,.contact-form-card textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,120,184,.14)}
.contact-form-card textarea{resize:vertical;min-height:150px}
.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.form-consent{grid-template-columns:auto 1fr!important;align-items:start;font-weight:500!important;line-height:1.5}
.form-consent input{width:1.1rem;height:1.1rem;margin-top:.2rem}
.form-honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
.form-status{margin-bottom:1.25rem;padding:1rem 1.1rem;border-radius:.8rem;line-height:1.5}
.form-status.is-success{background:#e7f7ee;color:#126738}.form-status.is-error{background:#fff0ee;color:#8b261c}
@media (max-width:900px){.contact-simple-grid{grid-template-columns:1fr}.contact-form-card{max-width:720px}}
@media (max-width:560px){.contact-simple-section{padding:3.5rem 0}.contact-simple-links,.form-row{grid-template-columns:1fr}.contact-form-card{padding:1.35rem}}

/* Extended home-page content. */
.home-draft-section :is(h2,h3,strong,a),.home-estonian-reasons :is(h3,strong){color:var(--navy)}
.home-draft-section :is(p,li,span),.home-estonian-reasons :is(p,span){color:var(--muted)}
.home-draft-section .eyebrow,.home-estonian-reasons .eyebrow{color:var(--blue)}
.home-draft-heading{max-width:880px;margin:0 auto clamp(2rem,4vw,3.5rem);text-align:center}
.home-draft-heading h2{font-size:clamp(2.2rem,4vw,4rem)}
.home-course-facts-section{padding:clamp(4rem,8vw,7rem) 0;background:linear-gradient(145deg,var(--soft),#fff)}
.home-course-facts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.home-course-facts-grid article{display:grid;min-height:210px;align-content:center;gap:.8rem;padding:clamp(1.5rem,2.7vw,2.2rem);border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 14px 38px rgba(5,50,80,.08)}
.home-course-facts-grid strong{font-size:clamp(1.6rem,2.4vw,2.35rem);line-height:1.05}
.home-course-facts-grid span{font-size:.96rem;line-height:1.6}
.home-free-lesson-section{padding:clamp(4rem,8vw,7rem) 0;background:#fff}
.home-free-lesson-card{display:grid;grid-template-columns:1fr;gap:clamp(1.75rem,4vw,3rem);padding:clamp(2rem,5vw,4.5rem);border:2px solid rgba(11,120,184,.28);border-radius:clamp(1.5rem,3vw,2.5rem);background:linear-gradient(145deg,#eef8fc,#fff);box-shadow:0 24px 60px rgba(5,50,80,.1)}
.home-free-lesson-card h2{max-width:940px;font-size:clamp(2.2rem,4.3vw,4.2rem)}
.home-free-lesson-lead{max-width:900px;font-size:clamp(1.1rem,1.6vw,1.35rem);font-weight:700;line-height:1.65}
.home-free-lesson-card ul{display:grid;gap:.55rem;margin:1.5rem 0 0;padding-left:1.25rem}
.home-free-lesson-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;width:min(100%,800px)}
.home-free-lesson-actions a{display:flex;min-height:3.5rem;align-items:center;justify-content:center;padding:.9rem 1.2rem;border:1px solid rgba(11,120,184,.3);border-radius:999px;background:#f3f9fc;font-weight:850;text-align:center;text-decoration:none;transition:border-color .2s,background-color .2s,transform .2s}
.home-free-lesson-actions .home-draft-button{background:#dff2fa}
.home-free-lesson-actions a:hover,.home-free-lesson-actions a:focus-visible{border-color:var(--blue);background:#d4edf8;transform:translateY(-2px)}
.home-estonian-reasons{margin:clamp(2rem,4vw,3.5rem) 0;padding:clamp(1.5rem,3vw,2.5rem);border:1px solid var(--line);border-radius:clamp(1.2rem,2vw,2rem);background:#eef7fb}
.home-estonian-reasons>h3{margin:.25rem 0 1.5rem;font-size:clamp(1.7rem,2.8vw,2.5rem)}
.home-estonian-reasons-grid{display:grid;grid-template-columns:1fr;gap:1rem}
.home-estonian-reasons-grid article{display:grid;align-content:start;gap:.6rem;padding:1.25rem;border:1px solid var(--line);border-radius:1rem;background:#fff}
.home-estonian-reasons-grid strong{font-size:1.08rem}
.home-estonian-reasons-grid span{font-size:.92rem;line-height:1.55}
.home-practice-preview{padding:clamp(4rem,8vw,7rem) 0;background:linear-gradient(180deg,#fff,#eef7fb)}
.home-practice-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.25rem,3vw,2.25rem)}
.home-practice-preview-card{display:grid;grid-template-rows:auto 1fr;overflow:hidden;border:1px solid var(--line);border-radius:clamp(1.4rem,2.5vw,2.2rem);background:#fff;box-shadow:0 22px 55px rgba(5,50,80,.1)}
.home-practice-preview-card figure{margin:0;overflow:hidden;aspect-ratio:16/10}
.home-practice-preview-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.65,.3,1)}
.home-practice-preview-card:hover img{transform:scale(1.035)}
.home-practice-preview-card>div{display:flex;flex-direction:column;padding:clamp(1.5rem,3vw,2.5rem)}
.home-practice-preview-card h3{margin:.25rem 0 .8rem;font-size:clamp(1.65rem,2.5vw,2.35rem)}
.home-practice-preview-card>div>p:not(.eyebrow){margin:0 0 1.3rem;line-height:1.7}
.home-practice-preview-card a{font-weight:850;text-underline-offset:.22em}
.home-practice-preview-link{align-self:flex-start;min-height:46px;margin-top:auto;padding:12px 20px;text-align:center}
@media (max-width:1000px){.home-course-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-estonian-reasons-grid{grid-template-columns:1fr}}
@media (max-width:620px){.home-draft-heading{text-align:left}.home-course-facts-section,.home-free-lesson-section,.home-practice-preview{padding:3.5rem 0}.home-course-facts-grid,.home-practice-preview-grid,.home-free-lesson-actions{grid-template-columns:1fr}.home-course-facts-grid article{min-height:0}.home-free-lesson-card{padding:1.6rem 1.25rem}.home-free-lesson-card h2{font-size:clamp(2rem,10vw,3rem)}.home-estonian-reasons{margin-inline:-6px;padding:1.3rem}.home-practice-preview-card>div{padding:1.5rem}.home-practice-preview-link{width:100%}}
@media (prefers-reduced-motion:reduce){.home-free-lesson-actions a,.home-practice-preview-card img{transition:none}}

/* Home-page instructors and graduate testimonials. */
.home-teachers-section{padding:clamp(4.5rem,9vw,8rem) 0;background:linear-gradient(145deg,#f2f8fb 0%,#fff 60%)}
.home-section-heading{max-width:830px;margin:0 auto clamp(2.5rem,5vw,4.5rem);text-align:center}
.home-section-heading h2{font-size:clamp(2.35rem,4.7vw,4.5rem)}
.home-section-heading>p:not(.eyebrow){margin-inline:auto;color:var(--muted);font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.7}
.home-teachers-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.25rem,3vw,2.25rem)}
.home-teacher-card{display:grid;grid-template-columns:minmax(180px,.72fr) minmax(0,1.28fr);align-items:stretch;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 18px 48px rgba(4,41,66,.09)}
.home-teacher-card figure{min-height:390px;margin:0;overflow:hidden;background:var(--sky)}
.home-teacher-card figure img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .55s ease}
.home-teacher-card:hover figure img{transform:scale(1.035)}
.home-teacher-card>div{display:flex;flex-direction:column;justify-content:center;padding:clamp(1.5rem,3vw,2.7rem)}
.home-teacher-card h3{margin:.35rem 0 1rem;font-size:clamp(1.65rem,2.5vw,2.35rem)}
.home-teacher-card>div>p:last-child{margin:0;color:var(--muted);line-height:1.7}
.home-teacher-role{margin:0;color:var(--blue);font-size:.76rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.home-teachers-action{margin:clamp(2rem,4vw,3.5rem) 0 0;text-align:center}
.home-testimonials-section{padding:clamp(4.5rem,9vw,8rem) 0;background:#fff}
.home-testimonials-shell{width:min(calc(100% - 48px),820px)}
.home-testimonials-heading{margin-bottom:clamp(2rem,4vw,3rem)}
.home-testimonials-viewport{overflow:hidden;border-radius:clamp(1.5rem,3vw,2.5rem);background:linear-gradient(135deg,var(--navy-deep),#075d8b);box-shadow:0 28px 70px rgba(3,45,75,.2)}
.home-testimonials-track{display:flex;transition:transform .5s cubic-bezier(.22,.61,.36,1);will-change:transform}
.home-testimonial{display:flex;min-width:100%;min-height:360px;flex-direction:column;align-items:center;justify-content:center;padding:clamp(1.7rem,4vw,3rem);color:#fff;text-align:center}
.home-testimonial-avatar-frame{display:block;width:clamp(8rem,14vw,11rem);height:clamp(8rem,14vw,11rem);margin-bottom:1.35rem;overflow:hidden;border:5px solid rgba(255,255,255,.82);border-radius:50%;background:var(--sky);box-shadow:0 16px 36px rgba(0,18,32,.32)}
.home-testimonial-avatar{width:100%;height:100%;object-fit:cover;object-position:center 28%;transition:transform .35s ease}
.home-testimonial:nth-child(3) .home-testimonial-avatar{object-position:67% 34%;transform:scale(2);transform-origin:67% 34%}
.home-testimonial blockquote{max-width:780px;margin:0}
.home-testimonial blockquote p{margin:0;color:#fff;font-family:var(--heading-font,inherit);font-size:clamp(1rem,1.45vw,1.28rem);font-weight:650;line-height:1.55}
.home-testimonial footer{display:grid;gap:.25rem;margin-top:1.5rem}
.home-testimonial footer[hidden]{display:none}
.home-testimonial footer strong{font-size:1.05rem}
.home-testimonial footer span{color:#bfe9f8;font-size:.9rem}
.home-testimonials-controls{display:flex;align-items:center;justify-content:center;gap:1.25rem;margin-top:1.6rem}
.home-testimonials-arrow{display:grid;width:3rem;height:3rem;place-items:center;padding:0;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);font-size:1.3rem;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background-color .2s ease}
.home-testimonials-arrow:hover,.home-testimonials-arrow:focus-visible{border-color:var(--cyan);background:var(--soft);transform:translateY(-2px)}
.home-testimonials-dots{display:flex;gap:.55rem}
.home-testimonials-dots button{width:.7rem;height:.7rem;padding:0;border:0;border-radius:50%;background:#b8cbd5;cursor:pointer;transition:width .25s ease,background-color .25s ease}
.home-testimonials-dots button[aria-current="true"]{width:1.9rem;border-radius:999px;background:var(--blue)}
.home-testimonials-submit{margin:1.8rem 0 0;text-align:center}
.home-testimonials-submit button{cursor:pointer}
.review-dialog{width:min(calc(100% - 32px),760px);max-width:760px;max-height:min(900px,calc(100dvh - 32px));overflow:auto;overscroll-behavior:contain;padding:0;border:0;border-radius:clamp(1.25rem,2.5vw,2rem);background:#fff;color:var(--ink);box-shadow:0 35px 100px rgba(1,26,45,.38)}
.review-dialog[open]{display:block}
.review-dialog::backdrop{background:rgba(2,24,41,.76);backdrop-filter:blur(7px)}
.review-dialog-card{position:relative;padding:clamp(1.5rem,4vw,3.25rem)}
.review-dialog-close{position:absolute;z-index:2;top:1rem;right:1rem;display:grid;width:3rem;height:3rem;place-items:center;padding:0;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);font-size:1.8rem;line-height:1;cursor:pointer;box-shadow:0 8px 24px rgba(4,41,66,.1)}
.review-dialog-close span{display:block;transform:translateY(-1px)}
.review-dialog-heading{padding-right:3rem}
.review-dialog-heading h2{font-size:clamp(2rem,4.5vw,3.35rem)}
.review-dialog-heading>p:last-child{max-width:620px;color:var(--muted);font-size:.98rem;line-height:1.65}
.review-form{display:grid;gap:1.15rem;margin-top:1.75rem}
.review-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.review-form label,.review-photo-field{display:grid;gap:.45rem;color:var(--navy);font-size:.86rem;font-weight:750}
.review-form input,.review-form select,.review-form textarea{width:100%;padding:.85rem 1rem;border:1px solid #bdd1dc;border-radius:.75rem;background:#fbfdfe;color:var(--ink);outline:none;transition:border-color .2s,box-shadow .2s}
.review-form input:focus,.review-form select:focus,.review-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,120,184,.14)}
.review-form textarea{min-height:145px;resize:vertical}
.review-form small,.review-photo-field>small{color:var(--muted);font-size:.75rem;font-weight:500;line-height:1.45}
.review-photo-field input[type="file"]{padding:.65rem;background:#f2f8fb}
.review-photo-field input[type="file"]::file-selector-button{margin-right:.8rem;padding:.55rem .85rem;border:0;border-radius:999px;background:var(--navy);color:#fff;font-weight:750;cursor:pointer}
.review-photo-preview{width:6.5rem;height:6.5rem;overflow:hidden;border:4px solid #fff;border-radius:50%;background:var(--sky);box-shadow:0 10px 28px rgba(4,41,66,.18)}
.review-photo-preview[hidden]{display:none}
.review-photo-preview img{width:100%;height:100%;object-fit:cover}
.review-form-consent{grid-template-columns:auto 1fr!important;align-items:start;font-weight:500!important;line-height:1.5}
.review-form-consent input{width:1.1rem;height:1.1rem;margin-top:.2rem}
.review-form-status{margin:0;padding:.9rem 1rem;border-left:3px solid var(--cyan);border-radius:.45rem;background:#edf7fb;color:var(--muted);font-size:.82rem;line-height:1.5}
.review-form-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.review-form-status.is-success{border-left-color:#16865b;background:#edf9f4;color:#0d6443}.review-form-status.is-error{border-left-color:#c83e45;background:#fff1f1;color:#8a2026}
.review-form>.button{justify-self:start;border:0;cursor:pointer}
@media (max-width:1050px){.home-teachers-grid{grid-template-columns:1fr}.home-teacher-card{max-width:820px;margin-inline:auto}}
@media (max-width:620px){.home-teachers-section,.home-testimonials-section{padding:3.75rem 0}.home-section-heading{text-align:left}.home-teacher-card{grid-template-columns:1fr}.home-teacher-card figure{min-height:0;aspect-ratio:1.15}.home-teacher-card>div{padding:1.5rem}.home-teachers-action{text-align:left}.home-testimonials-shell{width:min(calc(100% - 32px),820px)}.home-testimonials-heading{text-align:center}.home-testimonial{min-height:400px;padding:1.8rem 1.2rem}.home-testimonial blockquote p{font-size:1rem}.home-testimonials-controls{gap:1rem}.home-testimonials-submit .button{width:100%}.review-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.review-dialog-card{padding:1.35rem 1rem}.review-dialog-heading{padding-right:2.8rem}.review-dialog-heading h2{font-size:clamp(1.8rem,9vw,2.5rem)}.review-form-row{grid-template-columns:1fr}.review-form>.button{width:100%}}
@media (prefers-reduced-motion:reduce){.home-teacher-card figure img,.home-testimonials-track,.home-testimonials-arrow,.home-testimonials-dots button{transition:none}}
