:root{--navy:#082b3c;--navy-deep:#052433;--navy-black:#041c2a;--teal:#16a6ad;--teal-bright:#3dd2d2;--ink:#153747;--muted:#5c707a;--paper:#f7faf9;--line:#dce9e8;--white:#fff;font-family:"DM Sans",Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}p{line-height:1.7}h1,h2,h3{font-family:Manrope,Arial,sans-serif;letter-spacing:-.045em;margin:0;line-height:1.14}h1{font-size:clamp(3.2rem,5.2vw,5.75rem);font-weight:800}h2{font-size:clamp(2.4rem,3.55vw,4.1rem);font-weight:800}h3{font-size:1.42rem;font-weight:800}em{font-style:normal;color:var(--teal-bright)}.shell{width:min(100% - 64px,1280px);margin-inline:auto}.skip-link{position:absolute;left:12px;top:-80px;z-index:20;background:white;padding:12px}.skip-link:focus{top:12px}:focus-visible{outline:3px solid #f6bd54;outline-offset:4px}
.site-header{background:var(--white);position:relative;z-index:10}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:92px;gap:32px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand img{width:58px;height:58px;object-fit:cover}.brand span{display:flex;flex-direction:column;line-height:1}.brand strong{font-family:Manrope,sans-serif;font-size:1.62rem;letter-spacing:-.07em;color:#0c3d51}.brand small{font-size:.7rem;font-weight:700;letter-spacing:.39em;margin-top:5px;color:#197788}.site-nav{display:flex;align-items:center;gap:clamp(18px,2.7vw,42px);font-size:.9rem;font-weight:700;color:#284c5b}.site-nav>a:not(.nav-cta):hover,.site-nav>a:not(.nav-cta):focus-visible{color:#008e9a}.nav-cta{background:var(--navy);color:white;padding:15px 19px;border-radius:4px;white-space:nowrap}.nav-cta:hover{background:#0b5264}.nav-cta span,.button span,.text-link span{margin-left:16px}.menu-toggle{display:none}
.hero{background:var(--navy);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;min-height:650px}.hero-copy{padding:92px 5.5% 72px 0;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.19em;color:#0a939d;margin:0 0 27px;line-height:1.5}.eyebrow.light{color:#5cd1d6}.eyebrow span{display:inline-block;width:3px;height:3px;background:currentColor;vertical-align:middle;border-radius:50%;margin:0 11px}.hero h1{max-width:780px}.hero-intro{font-size:1.1rem;color:#d1e1e4;max-width:560px;margin:30px 0 34px;line-height:1.65}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;min-height:58px;padding:16px 22px;font-size:.93rem;font-weight:800;border-radius:4px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--teal-bright);color:#062a38}.button-primary:hover{background:#82eeee}.text-link{font-weight:800;font-size:.92rem;color:#0d7180;border-bottom:1px solid currentColor;padding-bottom:5px;white-space:nowrap}.light-link{color:white}.text-link:hover{color:#51cbd1}.hero-note{display:flex;align-items:center;gap:17px;margin-top:auto;padding-top:58px;max-width:390px}.hero-note p{font-size:.76rem;color:#b7d0d4;line-height:1.55;margin:0;letter-spacing:.02em}.note-line{height:1px;width:44px;background:#52b2b9;flex-shrink:0}.hero-visual{position:relative;min-height:650px;margin-right:calc((min(100vw - 64px,1280px) - 100vw)/2);background:#145565}.hero-visual:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(5,32,45,.22),transparent 48%),linear-gradient(0deg,rgba(5,26,35,.27),transparent 35%)}.hero-visual>img{height:100%;width:100%;object-fit:cover;object-position:center}.visual-caption{position:absolute;bottom:40px;left:35px;z-index:2;display:flex;align-items:center;gap:14px;padding:13px 19px;background:rgba(4,34,47,.91);border:1px solid rgba(132,217,216,.4);backdrop-filter:blur(8px);font-size:.8rem;line-height:1.4;color:#c6e8e8}.caption-mark{display:grid;place-items:center;font-size:1.35rem;font-weight:800;color:#41d6d5;border:2px solid #41d6d5;width:34px;height:34px;border-radius:50%}.visual-caption strong{font-size:.93rem;color:#fff}.hero-rule{height:6px;background:linear-gradient(90deg,#127b8c 0 28%,#43c7ce 28% 43%,#0c5570 43% 100%)}
.trust-strip{background:#e9f3f2}.trust-inner{display:grid;grid-template-columns:repeat(4,1fr);padding:27px 0;gap:20px}.trust-inner p{margin:0;padding-left:24px;border-left:1px solid #b7cece;display:flex;flex-direction:column;line-height:1.45}.trust-inner p:first-child{padding-left:0;border:0}.trust-inner strong{font-size:.91rem;color:#0c3645}.trust-inner span{font-size:.75rem;color:#5b747a}
.section{padding:108px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:46px}.section-heading h2{max-width:780px}.section-heading h2 span{color:#278991}.section-heading>p{max-width:310px;margin:0 0 8px;color:var(--muted);font-size:.94rem}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);background:white}.service-card{min-height:300px;padding:32px 33px 29px;display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s,transform .2s}.service-card:hover{background:#f0faf9}.card-index{font-size:.67rem;font-weight:800;letter-spacing:.17em;color:#158a96;margin-bottom:32px}.service-card h3{max-width:325px}.service-card p{font-size:.88rem;color:var(--muted);line-height:1.65;margin:13px 0 25px}.service-card a{margin-top:auto;font-size:.81rem;font-weight:800;color:#087d88;display:flex;justify-content:space-between;align-items:center;gap:12px}.service-card a span{font-size:1.15rem}.training-footnote{margin:25px 0 0;color:#657c82;font-size:.76rem}
.approach-section{background:#083545;color:#fff;padding:100px 0}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,9vw,150px)}.approach-intro h2{max-width:590px}.approach-intro>p:not(.eyebrow){color:#bad1d4;max-width:470px;font-size:.96rem;margin:25px 0 34px}.approach-list{border-top:1px solid #3b6872}.approach-list>div{display:flex;gap:28px;padding:28px 0;border-bottom:1px solid #3b6872}.approach-list span{color:#5ccecf;font-size:.72rem;font-weight:800;letter-spacing:.1em;margin-top:5px}.approach-list h3{font-size:1.15rem;letter-spacing:-.025em}.approach-list p{color:#b9d1d3;font-size:.86rem;margin:9px 0 0;max-width:390px}
.sectors-section{background:#fff}.sectors-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.sectors-grid h2{max-width:460px}.section-lead{color:var(--muted);max-width:360px}.sector-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.sector-list span{min-height:80px;display:flex;align-items:center;background:#f1f7f6;padding:20px 25px;border-left:3px solid #41bac1;font-weight:700;font-size:.92rem}
.about-section{background:#e9f3f2;overflow:hidden}.about-grid{display:grid;grid-template-columns:1fr 1fr;min-height:560px}.about-monogram{position:relative;background:#0d5b6b;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-left:calc((min(100vw - 64px,1280px) - 100vw)/2);padding-left:calc((100vw - min(100vw - 64px,1280px))/2)}.about-monogram>span{position:relative;z-index:2;color:#fff;font-family:Manrope,sans-serif;font-weight:800;font-size:clamp(4rem,8vw,8rem);letter-spacing:-.11em}.orbit{position:absolute;border:1px solid rgba(133,225,223,.35);border-radius:50%;width:480px;height:480px;transform:rotate(-18deg) scaleX(.75)}.orbit-two{width:700px;height:700px}.orbit-three{width:920px;height:920px}.about-copy{padding:95px 0 85px clamp(48px,7vw,110px);max-width:650px}.about-copy h2{max-width:500px}.about-copy p:not(.eyebrow){font-size:.96rem;color:#4c6973;margin:23px 0 0}.about-copy .text-link{display:inline-block;margin-top:30px}
.contact-section{background:var(--navy-black);color:#fff;padding:85px 0}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.contact-grid h2{max-width:780px}.contact-grid p:not(.eyebrow){max-width:520px;color:#bdd1d5;margin:23px 0 0;font-size:.94rem}.contact-action{justify-self:end}.contact-action .button{min-width:290px}.contact-action p{font-size:.78rem!important;max-width:310px!important}.contact-action p a{text-decoration:underline;text-underline-offset:3px;color:#7ce2e1}
.site-footer{background:#031923;color:#b9d0d4}.footer-inner{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:15px;padding:32px 0}.footer-brand{font-family:Manrope,sans-serif;font-size:1.4rem;font-weight:800;color:white;letter-spacing:-.06em}.footer-brand span{font-size:.63rem;letter-spacing:.15em;margin-left:4px;color:#72c8cc}.footer-inner p{font-size:.77rem;margin:0}.footer-inner>div{display:flex;gap:22px;font-size:.77rem}.footer-inner small{grid-column:1/-1;font-size:.7rem;color:#719099;margin-top:15px}
@media(max-width:1050px){.hero-grid{min-height:580px}.hero-copy{padding-top:75px}.hero-visual{min-height:580px}.service-card{padding:28px 24px}.sectors-grid{gap:40px}.about-copy{padding-left:55px}}
@media(max-width:760px){.shell{width:min(100% - 36px,1280px)}.header-inner{min-height:74px}.brand img{width:47px;height:47px}.brand strong{font-size:1.4rem}.brand small{font-size:.59rem}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;border:0;background:transparent;cursor:pointer}.menu-toggle span{display:block;width:25px;height:2px;background:var(--navy);margin-left:auto}.site-nav{display:none;position:absolute;top:74px;left:0;right:0;background:white;box-shadow:0 20px 28px rgba(5,30,42,.15);padding:16px 18px 24px;flex-direction:column;align-items:stretch;gap:0}.site-nav.open{display:flex}.site-nav a{padding:14px 8px}.site-nav .nav-cta{margin-top:8px;text-align:center;padding:15px}.hero-grid{display:flex;flex-direction:column}.hero-copy{padding:68px 0 48px}.hero h1{font-size:clamp(2.85rem,9vw,4.8rem)}.hero-intro{font-size:1rem}.hero-note{padding-top:46px}.hero-visual{min-height:420px;margin:0 -18px}.hero-visual img{position:absolute;inset:0}.visual-caption{bottom:22px;left:18px}.trust-inner{grid-template-columns:repeat(2,1fr);row-gap:24px}.trust-inner p:nth-child(3){padding-left:0;border:0}.section{padding:75px 0}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:22px;max-width:540px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:280px}.approach-section{padding:75px 0}.approach-grid,.sectors-grid,.contact-grid{grid-template-columns:1fr;gap:50px}.approach-list>div{padding:25px 0}.about-grid{display:block}.about-monogram{min-height:290px;margin:0 -18px;padding:0}.orbit{width:350px;height:350px}.orbit-two{width:530px;height:530px}.orbit-three{width:720px;height:720px}.about-copy{padding:65px 0 75px}.contact-action{justify-self:start}.footer-inner{grid-template-columns:1fr auto}.footer-inner p{grid-column:1/-1;grid-row:2}.footer-inner>div{grid-column:2;grid-row:1}.footer-inner small{margin-top:3px}}
@media(max-width:540px){.hero-copy{padding-top:54px}.hero h1{font-size:clamp(2.7rem,11vw,3.75rem)}.hero-actions{align-items:flex-start;flex-direction:column;gap:24px}.hero-visual{min-height:310px}.visual-caption{padding:9px 12px;font-size:.68rem}.visual-caption strong{font-size:.76rem}.trust-inner{gap:18px 10px}.trust-inner p{padding-left:14px}.trust-inner strong{font-size:.8rem}.trust-inner span{font-size:.68rem}.section h2,.approach-section h2,.about-section h2,.contact-section h2{font-size:clamp(2.15rem,9vw,3rem)}.service-grid{grid-template-columns:1fr}.service-card{min-height:250px;padding:29px}.card-index{margin-bottom:24px}.sector-list{grid-template-columns:1fr}.sector-list span{min-height:65px}.contact-action .button{min-width:0}.footer-inner{display:flex;flex-wrap:wrap;gap:17px 24px}.footer-inner p{order:3;flex-basis:100%}.footer-inner small{order:4;flex-basis:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.service-card{transition:none}}
.hero-visual>img{object-position:center 45%}
.training-gallery{background:#f7faf9;padding:92px 0 100px}
.gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}
.gallery-heading .eyebrow{margin-bottom:18px}.gallery-heading h2{font-size:clamp(2.25rem,3.2vw,3.4rem)}
.gallery-heading>p{color:var(--muted);margin:0 0 5px;font-size:.92rem}
.gallery-grid{display:grid;grid-template-columns:1fr 1fr .75fr;gap:13px}
.gallery-item{position:relative;margin:0;height:340px;overflow:hidden;background:#c7d9d9}
.gallery-item img{width:100%;height:100%;object-fit:cover}
.gallery-item-aed img{object-position:center 45%}
.gallery-item-class img{object-position:center 47%}
.gallery-item-instructor img{object-position:center 38%}
.gallery-item:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(3,25,35,.76));pointer-events:none}
.gallery-item figcaption{position:absolute;z-index:1;bottom:18px;left:20px;right:20px;color:#fff;font-size:.88rem;font-weight:800}
.contact-action{display:flex;flex-direction:column;align-items:flex-start}
.contact-email{margin-top:23px;border-bottom:1px solid #7ce2e1;padding-bottom:5px;font-size:1rem;font-weight:700;color:#7ce2e1}
.contact-email span{margin-left:12px}
.contact-action p{line-height:1.85!important}
@media(max-width:760px){.training-gallery{padding:75px 0}.gallery-heading{display:block}.gallery-heading>p{margin-top:17px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item{height:270px}.gallery-item-instructor{grid-column:1/-1;height:340px}.hero-visual>img{object-position:center 42%}}
@media(max-width:540px){.gallery-grid{grid-template-columns:1fr}.gallery-item,.gallery-item-instructor{grid-column:auto;height:300px}.gallery-item-instructor img{object-position:center 34%}.contact-email{font-size:.88rem}}

/* Emergency training accents within COTA's navy and teal palette. */
:root{--emergency-red:#bd2637;--emergency-light:#ff747e}
.hero-rule{background:linear-gradient(90deg,#127b8c 0 28%,var(--emergency-red) 28% 39%,#0c5570 39% 100%)}
.hero-note .note-line{height:3px;background:var(--emergency-light)}
.trust-inner p:first-child{border-left:3px solid var(--emergency-red);padding-left:18px}
.service-card:nth-child(-n+4){box-shadow:inset 0 4px 0 var(--emergency-red)}
.service-card:nth-child(-n+4) .card-index{color:var(--emergency-red)}
.approach-list>div:first-child>span{color:var(--emergency-light)}
