
:root{
  --navy:#1e2b3d; --red:#c9211e; --steel:#6093ac; --soft:#eef4f7;
  --line:#d7e1e7; --text:#172033; --muted:#5f6874; --white:#fff; --max:1180px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff;line-height:1.55}
img{max-width:100%;height:auto} a{color:inherit}
.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid #edf0f2}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:110px}
.brand img{display:block;width:min(520px,48vw);max-height:86px;object-fit:contain;object-position:left center}
.nav{display:flex;gap:27px;align-items:center;font-weight:700;font-size:.93rem}
.nav a{text-decoration:none;padding:12px 0;border-bottom:2px solid transparent}
.nav a:hover,.nav a:focus-visible,.nav a[aria-current="page"]{color:var(--red);border-color:var(--red)}
.menu-button{display:none;border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px 12px;font-weight:700}
.hero{padding:74px 0 62px}
.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:90px;align-items:center}
.kicker{font-size:1rem;text-transform:uppercase;letter-spacing:.12em;color:var(--steel);font-weight:700}
.hero h1,.page-hero h1{font-family:"Courier New",Courier,monospace;color:var(--navy);line-height:1.08;margin:.15em 0 .3em;letter-spacing:-.035em}
.hero h1{font-size:clamp(2.35rem,4vw,3.05rem)}
.red-rule{width:70px;height:4px;background:var(--red);margin:26px 0}
.hero h2{font-family:"Courier New",Courier,monospace;color:var(--steel);font-size:1.6rem;margin:0 0 8px}
.hero p{font-size:1.18rem;max-width:660px;margin:0}
.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:5px;padding:13px 20px;text-decoration:none;font-weight:700;border:2px solid transparent}
.btn-primary{background:var(--red);color:#fff}.btn-secondary{border-color:var(--steel);color:var(--steel);background:#fff}
.values{justify-self:center;min-width:300px}
.values span{display:block;font-family:"Courier New",Courier,monospace;text-transform:uppercase;letter-spacing:.18em;color:var(--steel);font-weight:700;padding:18px 0;border-bottom:1px solid rgba(96,147,172,.55)}
.values span:last-child{border:0}
.services{background:linear-gradient(180deg,#f4f8fa,#fff);border-block:1px solid #edf2f4}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.service{padding:44px 38px;text-align:center}.service+.service{border-left:1px solid var(--line)}
.icon-circle{width:58px;height:58px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;margin:0 auto 14px}
.icon-circle svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.service:nth-child(2) .icon-circle{background:var(--steel)}
.service h3{font-family:"Courier New",Courier,monospace;color:var(--navy);font-size:1.35rem;margin:8px 0}
.mini-rule{width:44px;height:3px;background:var(--red);margin:12px auto 20px}
.main-section{padding:62px 0}
.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px}
.card{border:1px solid var(--line);border-radius:9px;background:#fff;padding:34px;box-shadow:0 10px 32px rgba(30,43,61,.04)}
.card h2,.section-title{font-family:"Courier New",Courier,monospace;color:var(--navy);margin-top:0;font-size:2rem}
.card h3{color:var(--steel);font-family:"Courier New",Courier,monospace}
.text-link{display:inline-flex;gap:10px;align-items:center;color:var(--steel);font-weight:700;text-decoration:none;margin-top:15px}
.schedule-card{padding:24px}.schedule-head{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:16px}
.schedule-head h2{font-size:1.7rem;margin-bottom:0}.updated{color:var(--steel);font-weight:700}
.schedule-image{display:block;border:1px solid var(--line);box-shadow:0 4px 15px rgba(0,0,0,.08);background:#fff}
.zoom-note{text-align:center;color:var(--muted);font-size:.9rem;margin:8px 0 0}
.testimonials{background:var(--soft);padding:55px 0}
.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:24px}
.section-heading h2{margin:0;font-family:"Courier New",Courier,monospace;color:var(--navy);font-size:2rem}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.quote{background:#fff;border:1px solid #e5ebef;border-radius:7px;padding:25px;min-height:180px}
.quote p{margin-top:0}.quote cite{font-style:normal;color:var(--steel);font-weight:700}
.cta{background:var(--navy);color:#fff;padding:28px 0}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:25px}
.site-footer{padding:34px 0 38px}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr .7fr;gap:30px}
.footer-brand{font-family:"Courier New",Courier,monospace;font-weight:700;color:var(--navy)}
.footer-links a{display:block;color:var(--steel);text-decoration:none;margin:7px 0}
small,.small{font-size:.88rem;color:var(--muted)}
.page-hero{padding:56px 0 38px;background:linear-gradient(180deg,#fff,#f8fafb)}
.page-hero h1{font-size:clamp(2.2rem,4vw,3.8rem)}
.content{padding:45px 0 75px}.content-narrow{max-width:820px}
.content h2{font-family:"Courier New",Courier,monospace;color:var(--navy);margin-top:2em}
.page-intro{max-width:860px;margin-bottom:34px}.page-intro .section-title{margin:0 0 12px}.page-intro p{font-size:1.12rem;margin:0}
.content-grid{display:grid;gap:20px}.content-grid-three{grid-template-columns:repeat(3,1fr)}.content-grid-two{grid-template-columns:repeat(2,1fr)}
.content-grid .card{height:100%;box-shadow:0 8px 25px rgba(30,43,61,.035)}.content-grid .card h2{font-size:1.55rem;margin:.35em 0 .7em}
.content-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.13em;color:var(--steel);font-weight:700}
.check-list{padding-left:1.15em;margin:1.15em 0 0}.check-list li{margin:.45em 0}.check-list li::marker{color:var(--red)}
.principle-number{font-family:"Courier New",Courier,monospace;color:var(--red);font-weight:700;font-size:1.05rem}
.detail-section{margin-top:30px;padding:30px 32px;border:1px solid var(--line);border-radius:9px;background:var(--soft);display:flex;align-items:center;justify-content:space-between;gap:35px}
.detail-section h2{font-size:1.55rem;margin:0 0 .45em}.detail-section p{margin:.35em 0;max-width:780px}.detail-section .btn{flex:0 0 auto}.detail-section-stack{display:block}
.profile-sections{border-top:1px solid var(--line)}.profile-sections section{padding:28px 0;border-bottom:1px solid var(--line)}.profile-sections h2{font-size:1.55rem;margin:.25em 0 .5em}.profile-sections p{margin:0}
.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.experience-quote{margin:0;padding:30px;border:1px solid var(--line);border-radius:9px;background:#fff;box-shadow:0 8px 25px rgba(30,43,61,.035)}
.experience-quote p{font-family:"Courier New",Courier,monospace;color:var(--navy);font-size:1.08rem;margin:0 0 22px}.experience-quote cite{font-style:normal;color:var(--steel);font-weight:700}
.notice{border-left:4px solid var(--steel);background:var(--soft);padding:18px 20px;margin:20px 0}
.under-construction{min-height:48vh;display:grid;place-items:center;text-align:center}
.uc-box{max-width:720px;padding:50px;border:1px solid var(--line);border-radius:10px}
.admin-box{max-width:720px;margin:60px auto;padding:30px;border:1px solid var(--line);border-radius:10px}
code{background:#f2f4f6;padding:.15em .35em;border-radius:4px}
@media(max-width:900px){
  .header-inner{min-height:88px}.brand img{width:min(560px,70vw);max-height:72px}.menu-button{display:block}
  .nav{display:none;position:absolute;left:0;right:0;top:88px;background:white;padding:18px 24px;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}
  .nav.open{display:flex}.hero-grid,.two-col{grid-template-columns:1fr}.hero-grid{gap:35px}.values{justify-self:start}
  .service-grid,.quotes,.content-grid-three,.content-grid-two,.experience-grid{grid-template-columns:1fr}.service+.service{border-left:0;border-top:1px solid var(--line)}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .container{width:min(calc(100% - 28px),var(--max))}.brand img{width:72vw}.hero{padding-top:48px}.hero h1{font-size:2.55rem}
  .values{min-width:0}.service{padding:34px 20px}.card{padding:24px}.footer-grid{grid-template-columns:1fr}
  .cta-inner,.detail-section{align-items:flex-start;flex-direction:column}.detail-section{padding:25px 24px;gap:18px}
}
@media(min-width:601px){.hero h1{white-space:nowrap}}
