:root{--navy:#082b4c;--blue:#125c9c;--sky:#e8f3fa;--gold:#f4b323;--cream:#fbf8f0;--green:#1d745c;--ink:#172536;--white:#fff;--muted:#586575;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"DM Sans",sans-serif;font-size:17px;line-height:1.65;background:#fff}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:99;background:#fff;padding:.7rem 1rem}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid #dce4eb;backdrop-filter:blur(12px)}.nav-wrap{max-width:var(--max);height:84px;margin:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;color:var(--navy);text-decoration:none;line-height:1.1}.brand img{width:54px;height:58px;object-fit:cover;object-position:center;border-radius:3px}.brand strong{display:block;font:800 1.05rem "Libre Franklin",sans-serif;text-transform:uppercase;letter-spacing:.02em}.brand small{display:block;margin-top:5px;color:var(--muted);font-size:.75rem;letter-spacing:.13em;text-transform:uppercase}.site-header nav{display:flex;align-items:center;gap:26px}.site-header nav a{font-size:.89rem;font-weight:600;color:var(--ink);text-decoration:none}.site-header nav a:hover{color:var(--blue)}.site-header .nav-cta{background:var(--gold);color:var(--navy);padding:11px 18px;border-radius:4px}.menu-button{display:none}.hero{min-height:760px;position:relative;display:flex;align-items:center;color:#fff}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background:url('assets/hero.jpg') center 32%/cover no-repeat}.hero-shade{background:linear-gradient(90deg,rgba(3,29,54,.96) 0%,rgba(3,29,54,.77) 45%,rgba(3,29,54,.08) 82%)}.hero-content{position:relative;z-index:2;width:min(var(--max),calc(100% - 48px));margin:0 auto;padding:78px 0 150px}.eyebrow,.section-label{font-weight:700;text-transform:uppercase;letter-spacing:.16em;font-size:.76rem}.eyebrow{color:#ffd36b}.hero h1,.section h2,.visit h2{font-family:"Libre Franklin",sans-serif;letter-spacing:-.045em;line-height:1.02}.hero h1{max-width:720px;font-size:clamp(3rem,6vw,5.6rem);margin:18px 0 22px}.hero-copy{max-width:650px;font-size:1.17rem;line-height:1.6}.hero-actions{display:flex;gap:14px;margin-top:32px}.button{display:inline-block;padding:14px 21px;border-radius:4px;text-decoration:none;font-weight:700}.button.primary{background:var(--gold);color:var(--navy)}.button.secondary{color:#fff;border:1px solid rgba(255,255,255,.68)}.promise-ribbon{position:absolute;z-index:4;left:50%;bottom:0;transform:translate(-50%,50%);width:min(var(--max),calc(100% - 48px));display:grid;grid-template-columns:repeat(3,1fr);background:#fff;color:var(--navy);box-shadow:0 16px 48px rgba(2,24,46,.18)}.promise-ribbon span{padding:24px 28px;font-weight:700;border-right:1px solid #dae3eb}.promise-ribbon span:last-child{border:0}.promise-ribbon b{color:var(--gold);margin-right:12px}.section{padding:120px max(24px,calc((100% - var(--max))/2))}.section-label{color:var(--blue);margin-bottom:25px}.section-label.light{color:#ffd36b}.intro{padding-top:155px;background:var(--cream)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.section h2,.visit h2{font-size:clamp(2.3rem,4.5vw,4.2rem);color:var(--navy);margin:0}.lead{font-size:1.25rem;color:var(--navy);line-height:1.55}.intro-grid p:first-child{margin-top:0}.promise-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:70px}.promise-card{padding:34px;background:#fff;border-top:7px solid;border-radius:4px;box-shadow:0 10px 30px rgba(8,43,76,.07)}.promise-card.amber{border-color:var(--gold)}.promise-card.blue{border-color:var(--blue)}.promise-card.green{border-color:var(--green)}.card-number{display:block;color:#91a0ad;font-weight:700;font-size:.8rem}.promise-card h3,.way-grid h3{font:700 1.45rem "Libre Franklin",sans-serif;color:var(--navy);margin:13px 0}.promise-card ul{padding-left:20px;margin-bottom:0}.promise-card li{margin:.55rem 0}.journey{background:var(--navy);color:#fff;display:grid;grid-template-columns:.92fr 1.08fr;gap:70px;align-items:center}.journey-photo img{width:100%;height:650px;object-fit:cover;border-radius:4px}.journey h2{color:#fff}.journey-content>p{font-size:1.1rem;color:#d6e3ee}.stages{margin-top:38px}.stages div{display:grid;grid-template-columns:130px 1fr;gap:20px;border-top:1px solid rgba(255,255,255,.2);padding:18px 0}.stages b{color:#ffd36b}.stages span{color:#eef5f9}.way-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:end}.way-heading p{margin:0}.way-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:60px}.way-grid article{padding-top:22px;border-top:3px solid var(--gold)}.way-grid article>span{font-size:.77rem;text-transform:uppercase;letter-spacing:.13em;color:var(--blue);font-weight:700}.welcome{background:var(--sky);display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center}.welcome-photo img{display:block;width:100%;height:600px;object-fit:cover;object-position:center 22%;border-radius:4px}.welcome blockquote{font:700 1.6rem/1.45 "Libre Franklin",sans-serif;color:var(--navy);margin:34px 0;padding-left:24px;border-left:5px solid var(--gold)}.signature{font-weight:700;color:var(--blue)}.visit{padding:100px max(24px,calc((100% - var(--max))/2));background:#0b355d;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.visit h2{color:#fff}.visit>div>p{color:#dbe8f1;font-size:1.1rem}.contact-card{background:#fff;color:var(--ink);padding:35px 40px;border-radius:4px}.contact-card p{display:grid;grid-template-columns:100px 1fr;margin:0;padding:16px 0;border-bottom:1px solid #e1e7eb}.contact-card p:last-child{border:0}.contact-card span{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--blue);font-weight:700}.contact-card a,.contact-card strong{color:var(--navy);text-decoration:none;font-weight:700}.contact-card a+a{grid-column:2;margin-top:3px}footer{max-width:var(--max);margin:auto;padding:38px 24px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.85rem}.footer-brand{display:flex;align-items:center;gap:12px;color:var(--navy)}.footer-brand img{width:44px;height:47px;object-fit:cover}.footer-brand strong,.footer-brand small{display:block}.footer-brand small{color:var(--muted)}
@media(max-width:900px){.menu-button{display:block;background:var(--navy);color:#fff;border:0;border-radius:4px;padding:10px 15px;font:600 .9rem inherit}.site-header nav{display:none;position:absolute;top:84px;left:0;right:0;background:#fff;padding:20px 24px;box-shadow:0 14px 20px rgba(8,43,76,.12);flex-direction:column;align-items:stretch}.site-header nav.open{display:flex}.hero{min-height:720px}.hero-shade{background:linear-gradient(90deg,rgba(3,29,54,.93),rgba(3,29,54,.6))}.intro-grid,.journey,.way-heading,.welcome,.visit{grid-template-columns:1fr}.promise-cards{grid-template-columns:1fr}.way-grid{grid-template-columns:1fr 1fr}.journey-photo img,.welcome-photo img{height:460px}.promise-ribbon span{padding:18px 14px;font-size:.88rem}.promise-ribbon b{display:block}.section{padding-top:90px;padding-bottom:90px}.intro{padding-top:130px}}
@media(max-width:600px){body{font-size:16px}.nav-wrap{height:72px}.site-header nav{top:72px}.brand img{width:43px;height:46px}.brand strong{font-size:.88rem}.hero{min-height:760px}.hero-content{width:calc(100% - 32px);padding-bottom:185px}.hero h1{font-size:2.8rem}.hero-actions{flex-direction:column;align-items:stretch}.button{text-align:center}.promise-ribbon{width:calc(100% - 32px);grid-template-columns:1fr}.promise-ribbon span{display:flex;align-items:center;padding:10px 16px}.promise-ribbon b{display:inline}.intro{padding-top:205px}.way-grid{grid-template-columns:1fr}.journey,.welcome{gap:45px}.journey-photo img,.welcome-photo img{height:360px}.stages div{grid-template-columns:1fr;gap:3px}.contact-card{padding:24px}.contact-card p{grid-template-columns:1fr;gap:5px}.contact-card a+a{grid-column:1}.footer-brand small{display:none}footer{align-items:flex-start;gap:20px}}

/* Atlantic Academy identity — Kombu Green anchored, with the building's colour rhythm */
:root{--navy:#25352d;--kombu:#354230;--blue:#347aa2;--sky:#eef3ed;--gold:#e2c43f;--red:#b94f4f;--cream:#faf8f1;--green:#4f8061;--ink:#202b25;--muted:#667169}
.site-header{border-bottom-color:#dfe5df}
.site-header:before{content:"";display:block;height:6px;background:linear-gradient(90deg,var(--gold) 0 14%,var(--green) 14% 32%,var(--red) 32% 49%,var(--blue) 49% 68%,var(--kombu) 68% 100%)}
.brand{color:var(--kombu)}
.site-header nav a:hover{color:var(--kombu)}
.site-header .nav-cta{background:var(--kombu);color:#fff}
.hero-shade{background:linear-gradient(90deg,rgba(27,48,37,.97) 0%,rgba(35,57,44,.82) 46%,rgba(35,57,44,.12) 84%)}
.button.primary{background:var(--gold);color:var(--kombu)}
.journey{background:var(--kombu)}
.visit{background:#263a2f}
.promise-card.amber{border-color:var(--gold)}
.promise-card.blue{border-color:var(--blue)}
.promise-card.green{border-color:var(--green)}
.way-grid article:nth-child(1){border-color:var(--gold)}
.way-grid article:nth-child(2){border-color:var(--green)}
.way-grid article:nth-child(3){border-color:var(--red)}
.way-grid article:nth-child(4){border-color:var(--blue)}
.welcome-photo{margin:0}
.welcome-photo figcaption{margin-top:12px;color:var(--muted);font-size:.82rem;font-weight:600;letter-spacing:.02em}
.hero-image{background-image:url('assets/collaborative-learning.jpg');background-position:center 48%}
.life-grid{display:grid;grid-template-columns:1fr 1.25fr 1.25fr .8fr;grid-template-rows:310px 310px;gap:18px;margin-top:72px}
.life-grid figure{position:relative;margin:0;overflow:hidden;border-radius:4px;background:var(--kombu)}
.life-grid .attention-photo{grid-row:1/3}
.life-grid .cadet-photo{grid-column:2/4}
.life-grid .leader-photo{grid-column:4;grid-row:1/3}
.life-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.life-grid figure:hover img{transform:scale(1.025)}
.life-grid .attention-photo img{object-position:center 42%}
.life-grid .cadet-photo img{object-position:center 48%}
.life-grid .sport-photo img{object-position:center 46%}
.life-grid .leader-photo img{object-position:center 42%}
.life-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:42px 20px 18px;color:#fff;background:linear-gradient(transparent,rgba(22,38,29,.9))}
.life-grid figcaption b,.life-grid figcaption span{display:block}
.life-grid figcaption b{font:700 1.08rem "Libre Franklin",sans-serif}
.life-grid figcaption span{margin-top:4px;font-size:.86rem;line-height:1.4;color:rgba(255,255,255,.9)}
@media(max-width:900px){.life-grid{grid-template-columns:1fr 1fr;grid-template-rows:360px 280px 360px}.life-grid .attention-photo{grid-column:1;grid-row:1}.life-grid .cadet-photo{grid-column:2;grid-row:1}.life-grid .sport-photo{grid-column:1/3;grid-row:2}.life-grid .leader-photo{grid-column:1/3;grid-row:3}.life-grid .leader-photo img{object-position:center 30%}}
@media(max-width:600px){.life-grid{grid-template-columns:1fr;grid-template-rows:420px 300px 260px 420px;gap:14px;margin-top:48px}.life-grid .attention-photo,.life-grid .cadet-photo,.life-grid .sport-photo,.life-grid .leader-photo{grid-column:1}.life-grid .attention-photo{grid-row:1}.life-grid .cadet-photo{grid-row:2}.life-grid .sport-photo{grid-row:3}.life-grid .leader-photo{grid-row:4}.life-grid .leader-photo img{object-position:center 35%}}

/* Refined photographic presentation */
.hero{background:var(--kombu);overflow:hidden}
.hero-image{left:44%;background-image:url('assets/school-community.jpg');background-position:center 46%}
.hero-shade{background:linear-gradient(90deg,var(--kombu) 0%,rgba(53,66,48,.98) 40%,rgba(53,66,48,.78) 52%,rgba(53,66,48,.08) 78%)}
.hero-content{max-width:var(--max)}
.hero-content h1,.hero-copy{max-width:620px}
.welcome{grid-template-columns:1fr;gap:54px}
.welcome-photo img{height:auto;aspect-ratio:2/1;object-position:center 48%}
.welcome-copy{max-width:850px}
@media(max-width:900px){.hero-image{left:34%}.hero-shade{background:linear-gradient(90deg,rgba(35,57,44,.98) 0%,rgba(35,57,44,.84) 55%,rgba(35,57,44,.25) 100%)}.welcome-photo img{aspect-ratio:16/9}}
@media(max-width:600px){.hero-image{left:0;background-position:58% center}.hero-shade{background:linear-gradient(180deg,rgba(28,48,37,.78),rgba(28,48,37,.94))}.welcome-photo img{aspect-ratio:4/3;object-position:center}}

/* A calm, green place to learn, play and grow */
.environment-story{margin:0}
.environment-collage{display:grid;grid-template-columns:1.55fr .85fr;grid-template-rows:245px 245px;gap:16px}
.environment-collage figure{margin:0;overflow:hidden;border-radius:4px;background:var(--kombu)}
.environment-collage img{display:block;width:100%;height:100%;object-fit:cover}
.environment-building{grid-row:1/3}
.environment-building img{object-position:center 48%}
.environment-learning img{object-position:center 42%}
.environment-belonging img{object-position:center 32%}
.environment-caption{max-width:880px;margin:20px 0 0;font:700 clamp(1.1rem,2vw,1.35rem)/1.5 "Libre Franklin",sans-serif;color:var(--kombu)}
@media(max-width:760px){.environment-collage{grid-template-columns:1fr 1fr;grid-template-rows:280px 220px}.environment-building{grid-column:1/3;grid-row:1}.environment-learning{grid-column:1;grid-row:2}.environment-belonging{grid-column:2;grid-row:2}}
@media(max-width:520px){.environment-collage{grid-template-columns:1fr;grid-template-rows:240px 240px 240px;gap:12px}.environment-building,.environment-learning,.environment-belonging{grid-column:1}.environment-building{grid-row:1}.environment-learning{grid-row:2}.environment-belonging{grid-row:3}.environment-building img{object-position:center}}
