:root{--navy:#0b1730;--navy2:#102449;--blue:#1769e8;--blue2:#2e85ff;--ink:#17243b;--muted:#62718a;--line:#e1e8f2;--soft:#f4f7fc;--white:#fff;--green:#159b66;--shadow:0 18px 50px rgba(11,23,48,.09);--radius:20px;--container:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#f7f9fd;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.7}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button,input,textarea,select{font:inherit}.container{width:min(var(--container),calc(100% - 40px));margin-inline:auto}
.topbar{background:#071126;color:#dbe7fb;font-size:12px}.topbar-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:14px}.topbar strong{color:#fff}.topbar a{color:#fff;font-weight:750}
.header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-bottom:1px solid rgba(225,232,242,.9)}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{display:flex;align-items:center;gap:12px;color:var(--ink);min-width:220px}.logo:hover{text-decoration:none}.logo-badge{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;color:#fff;background:linear-gradient(135deg,var(--blue),#5a9dff);font-weight:900;letter-spacing:-1px;box-shadow:0 8px 20px #1769e833}.logo-text{display:flex;flex-direction:column;line-height:1.25}.logo-text strong{font-size:17px;letter-spacing:-.4px}.logo-text small{margin-top:5px;color:var(--muted);font-size:10px;letter-spacing:.35px}
.navlinks{display:flex;align-items:center;gap:5px}.navlinks>a,.dropbtn{border:0;background:transparent;color:#24334e;font-size:13px;font-weight:700;padding:12px 10px;border-radius:10px;white-space:nowrap}.navlinks>a:hover,.dropbtn:hover,.dropbtn[aria-expanded="true"]{background:#edf4ff;color:var(--blue);text-decoration:none}
.dropdown{position:relative}.dropbtn{cursor:pointer;display:flex;align-items:center;gap:8px}.chevron{width:7px;height:7px;border-right:1.7px solid currentColor;border-bottom:1.7px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}.dropbtn[aria-expanded="true"] .chevron{transform:rotate(225deg) translate(-1px,-1px)}
.dropmenu{position:absolute;top:calc(100% + 9px);left:0;min-width:235px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);display:none}.dropdown.open .dropmenu{display:block;animation:dropIn .16s ease-out}.dropmenu a{display:block;padding:10px 12px;border-radius:9px;color:#30405a;font-size:13px;font-weight:600}.dropmenu a:hover{background:#f0f5ff;color:var(--blue);text-decoration:none}@keyframes dropIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
.navlinks .booknav{background:var(--blue);color:#fff;padding:12px 15px;margin-left:4px;box-shadow:0 8px 20px #1769e82b}.navlinks .booknav:hover{background:#0d55c5;color:#fff}.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);background:#fff;border-radius:12px;cursor:pointer;padding:10px}.menu-toggle span{display:block;height:2px;background:var(--navy);margin:5px 0;border-radius:4px;transition:.2s}
.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 85% 20%,#2555a8 0,transparent 35%),linear-gradient(120deg,#09152d,#102c59 72%,#15468d);color:#fff;padding:58px 0 66px}.hero:after{content:"";position:absolute;width:390px;height:390px;right:-130px;bottom:-250px;border:1px solid #ffffff24;border-radius:50%;box-shadow:0 0 0 42px #ffffff08,0 0 0 85px #ffffff06}.hero-inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:30px}.hero-copy{max-width:820px}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border:1px solid #ffffff36;background:#ffffff0c;border-radius:99px;color:#cfe0ff;font-size:11px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase}.eyebrow-dot{width:7px;height:7px;background:#69d6ac;border-radius:50%;box-shadow:0 0 0 4px #69d6ac24}h1{margin:18px 0 14px;font-size:clamp(36px,5vw,54px);line-height:1.08;letter-spacing:-1.8px}.hero-lead{max-width:790px;margin:0;color:#dce7fa;font-size:15px;line-height:1.85}.hero-mark{flex:0 0 94px;width:94px;height:94px;display:grid;place-items:center;border:1px solid #ffffff3a;border-radius:27px;background:#ffffff10;color:#fff;font-size:45px;font-weight:850}
.breadcrumb{padding:15px 0;color:#8290a7;font-size:12px}.breadcrumb a{color:#63748e}.layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:26px;align-items:start;padding:10px 0 70px}.sidebar{position:sticky;top:100px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:19px;box-shadow:0 8px 30px #10244908}.sidebar-title{margin:0 0 13px;font-size:11px;color:#8995a8;font-weight:850;letter-spacing:1.2px;text-transform:uppercase}.sidebar-links{display:flex;flex-direction:column}.side-link{display:flex;align-items:center;gap:10px;padding:10px 11px;margin:3px 0;border-radius:10px;color:#40506a;font-size:13px;font-weight:650}.side-link:before{content:"";width:6px;height:6px;flex:0 0 6px;border-radius:2px;background:#b8c7dd}.side-link:hover{background:#f2f6ff;color:var(--blue);text-decoration:none}.side-link.active{background:#edf4ff;color:var(--blue)}.side-link.active:before{background:var(--blue)}.side-cta{display:flex;justify-content:center;align-items:center;gap:9px;margin-top:17px;padding:13px 14px;background:var(--blue);border-radius:12px;color:#fff;font-size:13px;font-weight:800;box-shadow:0 8px 18px #1769e82a}.side-cta:hover{background:#0d55c5;color:#fff;text-decoration:none}
.content-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(23px,4vw,46px);box-shadow:0 8px 30px #10244908;min-width:0}.notice{display:flex;gap:13px;padding:16px 17px;margin:0 0 25px;border:1px solid #dce8fb;border-radius:14px;background:#f4f8ff;color:#40516d;font-size:13px}.notice-icon{flex:0 0 28px;width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#dfebff;color:var(--blue);font-weight:900}.notice p{margin:0}.content-card h2{margin:30px 0 10px;color:#142644;font-size:20px;line-height:1.4;letter-spacing:-.35px;scroll-margin-top:110px}.content-card h2:first-of-type{margin-top:23px}.content-card h3{margin:22px 0 8px;font-size:16px;color:#1c2f4e}.content-card p{margin:0 0 14px;color:#53627a;font-size:14px;line-height:1.9}.content-card strong{color:#243650}.content-card ul,.content-card ol{margin:8px 0 18px;padding-left:22px;color:#53627a;font-size:14px;line-height:1.9}.content-card li{padding-left:4px;margin:4px 0}.content-card a{text-decoration:underline;text-underline-offset:3px}.legal-note{margin-top:27px;padding:18px 19px;border-left:4px solid var(--blue);border-radius:0 13px 13px 0;background:#f1f6ff;color:#455774;font-size:13px;line-height:1.85}.legal-note strong{display:block;margin-bottom:4px;color:#1c3e77}.updated{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:24px;padding-top:17px;border-top:1px solid var(--line);color:#8390a5;font-size:12px}
.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:18px 0 25px}.contact-tile{border:1px solid var(--line);background:#fbfcff;border-radius:14px;padding:17px}.contact-tile .tile-label{font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:#8794a8}.contact-tile a{display:block;font-size:15px;font-weight:800;margin-top:4px;overflow-wrap:anywhere}.contact-form{border:1px solid var(--line);border-radius:16px;padding:20px;margin-top:18px;background:#fbfcff}.contact-form h2{margin-top:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:750;color:#31435f}.field input,.field select,.field textarea{width:100%;border:1px solid #d5dfed;border-radius:10px;background:#fff;padding:11px 12px;color:var(--ink);font-size:14px}.field textarea{min-height:125px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid #1769e825;border-color:var(--blue)}.form-submit{margin-top:14px;border:0;border-radius:11px;padding:12px 17px;background:var(--blue);color:#fff;font-weight:800;cursor:pointer}.form-submit:hover{background:#0d55c5}.form-help{font-size:12px!important;color:#75839a!important;margin:10px 0 0!important}
.footer{background:#09152d;color:#c6d2e6;padding:42px 0 23px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:34px}.footer-brand{color:#fff;font-size:18px;font-weight:850}.footer p{max-width:420px;color:#aebdd4;font-size:13px;line-height:1.8}.footer h3{margin:2px 0 13px;color:#fff;font-size:12px;letter-spacing:.7px;text-transform:uppercase}.footer a{display:block;width:fit-content;margin:8px 0;color:#c6d2e6;font-size:13px}.footer a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-top:28px;padding-top:17px;border-top:1px solid #ffffff1c;color:#91a2bd;font-size:11px}.floating{position:fixed;right:20px;bottom:20px;z-index:900;display:flex;flex-direction:column;gap:10px}.float-btn{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;color:#fff;box-shadow:0 8px 25px #06132b35;transition:transform .18s}.float-btn:hover{transform:translateY(-3px);text-decoration:none}.float-call{background:var(--blue);font-size:23px}.float-mail{background:#159b66;font-size:20px}.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}:focus-visible{outline:3px solid #78aaff;outline-offset:3px}
@media(max-width:1050px){.nav{min-height:72px}.menu-toggle{display:block;flex:0 0 44px}.navlinks{position:absolute;left:0;right:0;top:100%;display:none;align-items:stretch;gap:4px;max-height:calc(100vh - 72px);overflow:auto;padding:14px 20px 22px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 18px 28px #10244912}.navlinks.is-open{display:flex;flex-direction:column}.navlinks>a,.dropbtn{width:100%;justify-content:space-between;text-align:left;padding:13px 12px}.dropdown{width:100%}.dropmenu{position:static;min-width:0;margin:3px 0 8px;padding:6px;border-radius:12px;box-shadow:none;background:#f8faff;border-color:#e8eef8}.navlinks .booknav{margin:8px 0 0;text-align:center;justify-content:center}}
@media(max-width:760px){.container{width:min(100% - 28px,var(--container))}.topbar-inner{justify-content:center;min-height:36px;text-align:center}.topbar-inner span:nth-child(2){display:none}.nav{gap:12px}.logo{min-width:0}.logo-badge{width:42px;height:42px}.logo-text strong{font-size:15px}.logo-text small{font-size:9px}.hero{padding:43px 0 48px}.hero-mark{flex-basis:65px;width:65px;height:65px;border-radius:18px;font-size:32px}h1{font-size:40px;letter-spacing:-1.3px}.hero-lead{font-size:14px}.layout{grid-template-columns:1fr;gap:15px;padding-bottom:45px}.sidebar{position:static;padding:15px}.sidebar-links{display:grid;grid-template-columns:1fr 1fr;gap:3px}.side-link{font-size:12px;padding:9px}.content-card{padding:22px 19px;border-radius:17px}.content-card h2{font-size:18px;margin-top:26px}.content-card p,.content-card ul,.content-card ol{font-size:13.5px}.footer-grid{grid-template-columns:1fr 1fr;gap:22px}.footer-grid>div:first-child{grid-column:1/-1}.floating{right:12px;bottom:12px}.float-btn{width:46px;height:46px;border-radius:14px}}
@media(max-width:450px){.hero-mark{display:none}.contact-grid,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.updated{display:block}.updated span{display:block;margin:4px 0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Founder card for the About page */
.founder-card{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:22px;padding:22px;margin:20px 0;border:1px solid var(--line);border-radius:17px;background:linear-gradient(135deg,#f8fbff,#fff)}
.founder-image{width:140px;height:140px;border-radius:24px;overflow:hidden;background:#eaf1fc;display:grid;place-items:center}
.founder-image img{width:100%;height:100%;object-fit:cover}
.founder-kicker{margin:0 0 3px!important;font-size:10px!important;text-transform:uppercase;letter-spacing:1px;font-weight:850;color:var(--blue)!important}
.founder-name{margin:0 0 8px!important;font-size:24px!important}
@media(max-width:500px){.founder-card{grid-template-columns:1fr;text-align:center}.founder-image{margin:0 auto}.founder-card p{text-align:left}}


/* Consistent sharp-corner system: sections, cards, navigation and controls */
section, article, aside, nav, header, footer,
.sidebar, .content-card, .contact-tile, .contact-form, .founder-card, .founder-image,
.notice, .legal-note, .side-cta, .float-btn, .logo-badge, .dropmenu, .eyebrow,
input, select, textarea, button, .hero-mark, .menu-toggle, .side-link,
.navlinks>a, .dropbtn, .form-submit, .field input, .field select, .field textarea {
  border-radius: 2px !important;
}


/* Extra-small phones: keep every page usable from 320px wide */
@media (max-width: 380px) {
  .container { width: calc(100% - 20px); }
  .nav { gap: 8px; min-height: 68px; }
  .logo { gap: 8px; min-width: 0; }
  .logo-badge { width: 36px; height: 36px; flex: 0 0 36px; }
  .logo-text strong { font-size: 14px; }
  .logo-text small { font-size: 8px; letter-spacing: 0; }
  .menu-toggle { flex: 0 0 40px; width: 40px; height: 40px; padding: 8px; }
  .navlinks { min-width: 0; }
  .hero { padding: 34px 0 38px; }
  h1 { font-size: clamp(30px, 9vw, 36px); letter-spacing: -.8px; overflow-wrap: anywhere; }
  .hero-lead, .content-card p, .content-card li { overflow-wrap: anywhere; }
  .layout { gap: 12px; padding-bottom: 35px; }
  .sidebar { padding: 12px; min-width: 0; }
  .sidebar-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .side-link { padding: 8px 6px; font-size: 11px; overflow-wrap: anywhere; min-width: 0; }
  .content-card { padding: 16px 13px; min-width: 0; }
  .content-card h2 { font-size: 17px; overflow-wrap: anywhere; }
  .contact-grid, .form-grid { grid-template-columns: minmax(0, 1fr); }
  .contact-tile, .contact-form { padding: 13px; min-width: 0; }
  .field, .field input, .field select, .field textarea { min-width: 0; }
  .founder-card { padding: 14px; gap: 14px; grid-template-columns: minmax(0, 1fr); }
  .founder-image { width: 120px; height: 120px; margin: 0 auto; }
  .founder-name { font-size: 21px !important; overflow-wrap: anywhere; }
  .footer { padding: 30px 0 18px; }
  .footer-grid { gap: 18px; }
  .footer a { overflow-wrap: anywhere; }
  .footer-bottom { gap: 8px; }
  .updated { overflow-wrap: anywhere; }
  .floating { right: 8px; bottom: 8px; }
  .float-btn { width: 42px; height: 42px; }
}

/* Prevent long contact details and URLs from forcing horizontal scrolling */
.content-card, .contact-tile, .contact-form, .footer, .footer-grid > div { min-width: 0; }
.content-card a, .contact-tile a, .footer a, .updated a { overflow-wrap: anywhere; word-break: normal; }
