:root{--green:#0f3a24;--green2:#0a2818;--orange:#ee7a2c;--orange2:#d9661a;--ink:#25302b;--muted:#68756e;--bg:#fff;--alt:#f5f7f3;--line:#e4e9e2;--serif:"Playfair Display",Georgia,serif;--sans:Manrope,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}

*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:16px/1.7 var(--sans);color:var(--ink);background:var(--bg)}
img{max-width:100%;height:auto;display:block}a{color:var(--green)}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}.narrow{max-width:820px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:99}
h1,h2,h3{font-family:var(--serif);line-height:1.2}
/* header */
.site-header{position:sticky;top:0;z-index:40;background:var(--bg);box-shadow:0 2px 14px rgba(0,0,0,.08)}
.bar{display:flex;align-items:center;gap:20px;min-height:74px}
.brand{background:#fff;padding:6px 14px 8px;border-radius:0 0 18px 18px;margin-bottom:-26px;box-shadow:0 8px 18px rgba(0,0,0,.12);align-self:flex-start;z-index:2}
.brand img{height:68px;width:auto}
nav{display:flex;align-items:center;gap:2px;margin-left:auto}
nav>a,.dd>a{padding:26px 10px;white-space:nowrap;text-decoration:none;color:var(--ink);font-weight:600;font-size:15px;position:relative;display:block}
nav>a:hover,.dd>a:hover{color:var(--orange)}nav>a.active:after,.dd>a.on:after{content:"";position:absolute;left:11px;right:11px;bottom:18px;height:2px;background:var(--orange)}
nav>a.active,.dd>a.on{color:var(--green)}
.dd{position:relative}.dd i{display:inline-block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:4px}
.sub{display:none;position:absolute;top:100%;left:0;min-width:180px;background:var(--bg);border-radius:0 0 12px 12px;box-shadow:0 14px 30px rgba(0,0,0,.14);padding:8px}.dd:hover .sub,.dd:focus-within .sub{display:block}
.sub a{display:block;padding:9px 14px;border-radius:8px;text-decoration:none;color:var(--ink);font-weight:600;font-size:14.5px}.sub a:hover{background:var(--alt);color:var(--orange)}
.hcta{display:flex;align-items:center;gap:12px}.call{color:var(--orange);display:grid;place-items:center;width:40px;height:40px;border-radius:50%}
.pill{display:inline-block;background:var(--orange);color:#fff!important;padding:11px 22px;border-radius:999px;text-decoration:none;font-weight:700;font-size:15px;transition:background .2s,transform .2s}.pill:hover{background:var(--orange2);transform:translateY(-1px)}.pill.big{padding:15px 30px;font-size:16px}
.nt,.burger{display:none}
@media (max-width:1020px){.burger{display:block;cursor:pointer;padding:14px;margin-left:auto}.burger span,.burger span:before,.burger span:after{display:block;width:24px;height:2px;background:var(--ink);position:relative;content:""}.burger span:before{top:-7px;position:absolute}.burger span:after{top:7px;position:absolute}
nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--bg);flex-direction:column;align-items:stretch;padding:8px 20px 16px;box-shadow:0 14px 24px rgba(0,0,0,.12)}.nt:checked~nav{display:flex}nav>a,.dd>a{padding:12px 4px}nav>a.active:after,.dd>a.on:after{display:none}.sub{display:block;position:static;box-shadow:none;padding:0 0 0 14px}.hcta .call{display:none}.hcta{margin-left:0}.bar{position:relative}}
@media (max-width:520px){.brand img{height:54px}.hcta .pill{padding:9px 14px;font-size:13px}}
/* hero slider */
.hero-slider{position:relative;height:min(78vh,640px);min-height:440px;color:#fff;overflow:hidden;background:var(--green2)}
.slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1s ease}.slide.on{opacity:1}
.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,28,17,.78),rgba(6,28,17,.25) 70%)}
.hero-copy{position:absolute;left:0;right:0;bottom:130px}.hero-copy h1{font-size:clamp(34px,6vw,64px);margin:0 0 12px;max-width:720px;font-weight:600}.hero-copy p{max-width:520px;font-size:18px;margin:0 0 24px;opacity:.92}
.ctrl{position:absolute;left:0;right:0;bottom:74px;display:flex;justify-content:space-between;align-items:center}.count{font-size:15px;opacity:.9}.count b{font-size:22px}
.arrows button{width:44px;height:44px;border-radius:50%;border:1.5px solid rgba(255,255,255,.7);background:transparent;color:#fff;font-size:18px;cursor:pointer;margin-left:8px}.arrows button:hover{background:var(--orange);border-color:var(--orange)}
.quick{position:relative;z-index:3;margin-top:-50px;display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;background:var(--bg);border-radius:20px;box-shadow:0 18px 44px rgba(0,0,0,.18);overflow:hidden;padding:0}
.q{display:flex;flex-direction:column;justify-content:center;padding:22px 26px;text-decoration:none;color:var(--ink);border-left:1px solid var(--line);position:relative}.q span{font-size:12.5px;color:var(--muted)}.q b{font-family:var(--serif);font-size:19px;color:var(--green)}
.q:hover{background:var(--alt)}.q.first{background:var(--orange);color:#fff;border:0}.q.first span,.q.first b{color:#fff}.q.first i{position:absolute;right:22px;top:50%;transform:translateY(-50%);font-style:normal;font-size:22px}.q.first:hover{background:var(--orange2)}
@media (max-width:860px){.quick{grid-template-columns:1fr 1fr}}@media (max-width:520px){.quick{grid-template-columns:1fr;margin-top:-30px}.q{border-left:0;border-top:1px solid var(--line)}}
/* inner hero */
.page-hero{background-size:cover;background-position:center;color:#fff;padding:78px 0 70px}.page-hero h1{margin:6px 0 0;font-size:clamp(32px,5vw,52px);font-weight:600}.crumb{margin:0;font-size:14px;opacity:.85}.crumb a{color:#fff}
/* sections */
.sec{padding:72px 0}.sec.alt{background:var(--alt)}.kicker{color:var(--orange);font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px}
h2{font-size:clamp(26px,3.6vw,38px);margin:0 0 .6em;color:var(--green);font-weight:600}
h3{margin:1.4em 0 .4em;font-weight:600}.lead{font-size:1.15em}.muted{color:var(--muted)}.small{font-size:13px}
.split{display:grid;grid-template-columns:420px 1fr;gap:56px;align-items:center}
@media (max-width:860px){.split{grid-template-columns:1fr!important;gap:28px}}
.blob img{border-radius:62% 38% 58% 42%/48% 56% 44% 52%;width:100%;aspect-ratio:1/1;object-fit:cover;box-shadow:0 20px 50px rgba(15,58,36,.22)}
.portrait img{border-radius:20px;width:100%}.map{min-height:380px}.map iframe{width:100%;height:100%;min-height:380px;border:0;border-radius:20px}
.stats{background:radial-gradient(ellipse at 30% 0,#1d5a39,var(--green));color:#fff;padding:54px 0}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.grid4 b{display:block;font-family:var(--serif);font-size:46px;color:#ffb27a;line-height:1.1}.grid4 span{font-size:14.5px;opacity:.9}@media (max-width:700px){.grid4{grid-template-columns:repeat(2,1fr)}}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}@media (max-width:900px){.grid3{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.grid3{grid-template-columns:1fr}}
.card{background:var(--bg);border:1px solid var(--line);border-radius:18px;padding:26px;transition:transform .2s,box-shadow .2s;border-top:3px solid var(--orange)}.card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(15,58,36,.12)}.card h3{margin-top:0;color:var(--green)}
.events img,.figure img{border-radius:18px;width:100%}.events.small{margin-top:18px;max-width:520px}
blockquote{margin:0 0 1em;padding-left:18px;border-left:4px solid var(--orange);font-family:var(--serif);font-size:1.3em}
.cta{background:linear-gradient(120deg,var(--green2),var(--green));color:#fff;text-align:center;padding:60px 0}.cta h2{color:#fff}
.ticks{padding-left:0;list-style:none}.ticks li{padding-left:30px;position:relative;margin:.6em 0}.ticks li:before{content:"\2713";position:absolute;left:0;color:var(--orange);font-weight:800}
.rows{display:grid;gap:44px;margin-top:30px}.row{display:grid;grid-template-columns:400px 1fr;gap:40px;align-items:center}.row:nth-child(even){grid-template-columns:1fr 400px}.row:nth-child(even) .rimg{order:2}
.rimg img{border-radius:20px;width:100%;box-shadow:0 14px 34px rgba(0,0,0,.14)}.row h3{margin-top:0;color:var(--green);font-size:26px}@media (max-width:760px){.row,.row:nth-child(even){grid-template-columns:1fr}.row:nth-child(even) .rimg{order:0}}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.gal img{border-radius:14px;width:100%;height:220px;object-fit:cover;transition:transform .25s}.gal.tall img{height:auto;object-fit:contain}.gal a{overflow:hidden;border-radius:14px;display:block}.gal a:hover img{transform:scale(1.04)}
.tw{overflow-x:auto;margin:10px 0 18px}table{border-collapse:collapse;width:100%;font-size:14.5px}th,td{border:1px solid var(--line);padding:10px 14px;text-align:left;vertical-align:top}th{background:var(--green);color:#fff}
.pdf{display:inline-block;background:var(--alt);border:1px solid var(--line);padding:3px 12px;border-radius:999px;text-decoration:none;font-weight:700;font-size:13px;margin:2px 0}.pdf:hover{background:var(--orange);border-color:var(--orange);color:#fff}
.two{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width:760px){.two{grid-template-columns:1fr}}
.site-footer{background:var(--green2);color:#c9d8cf;padding-top:50px}.site-footer a{color:#fff}.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}@media (max-width:760px){.cols{grid-template-columns:1fr}}
.site-footer h3{color:#fff;margin-top:0}.copy{text-align:center;border-top:1px solid #1d4430;margin-top:30px;padding:16px;font-size:13px}
/* floating */
.notice{position:fixed;left:18px;bottom:18px;z-index:50;background:var(--orange);color:#fff;text-decoration:none;font-weight:700;padding:12px 20px;border-radius:999px;display:flex;gap:8px;align-items:center;box-shadow:0 10px 26px rgba(0,0,0,.25)}.notice:hover{background:var(--orange2)}
.sidetab{position:fixed;right:0;top:46%;z-index:50;background:#243b8a;color:#ffc43d!important;writing-mode:vertical-rl;text-decoration:none;font-weight:800;letter-spacing:.1em;font-size:13px;padding:18px 9px;border-radius:12px 0 0 12px}
@media (max-width:600px){.sidetab{display:none}}
@media (max-width:1240px){nav>a,.dd>a{font-size:14px;padding-left:7px;padding-right:7px}.brand img{height:60px}}
.pill{white-space:nowrap}
/* v3: notice drawer, whatsapp, popup, form, tour, strip, motion */
.center{text-align:center;margin-top:34px}
.notice{border:0;cursor:pointer;font:inherit;font-weight:700}
.wa{position:fixed;right:18px;bottom:18px;z-index:50;background:#25d366;color:#fff;text-decoration:none;display:flex;align-items:center;gap:8px;padding:12px 18px;border-radius:999px;font-weight:700;box-shadow:0 10px 26px rgba(0,0,0,.25)}.wa:hover{background:#1ebe5a}
@media (max-width:520px){.wa span{display:none}.wa{padding:14px}}
.drawer{position:fixed;left:0;top:0;bottom:0;width:min(360px,92vw);background:var(--bg);z-index:80;box-shadow:12px 0 40px rgba(0,0,0,.3);padding:18px;overflow:auto;transform:translateX(-102%);transition:transform .3s;display:block}
.drawer[hidden]{display:block;visibility:hidden}.drawer.open{transform:none;visibility:visible}
.dh{display:flex;justify-content:space-between;align-items:center}.dh h3{margin:0;color:var(--green)}.dh button{background:none;border:0;font-size:30px;line-height:1;cursor:pointer;color:var(--ink)}
.nimg img{border-radius:12px;margin:14px 0}.nlab{font-weight:700;color:var(--orange);text-transform:uppercase;font-size:12px;letter-spacing:.1em;margin:6px 0}
.drawer ul{list-style:none;padding:0;margin:0 0 18px}.drawer li a{display:block;padding:11px 0;border-bottom:1px solid var(--line);text-decoration:none;font-weight:600}
.modal{position:fixed;inset:0;background:rgba(5,20,12,.72);z-index:90;display:grid;place-items:center;padding:18px}.modal[hidden]{display:none}
.mbox{position:relative;max-width:560px;width:100%;max-height:92vh;overflow:auto;background:var(--bg);border-radius:18px;padding:14px;text-align:center}.mbox img{border-radius:12px;margin:0 auto 12px}.mbox>button{position:absolute;right:10px;top:6px;z-index:2;width:36px;height:36px;border-radius:50%;border:0;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.3);font-size:22px;cursor:pointer}
.shead{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:18px}.shead h2{margin:0}
.strip{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}.strip a{flex:0 0 auto;scroll-snap-align:start}.strip img{height:340px;width:auto;border-radius:14px;box-shadow:0 10px 26px rgba(0,0,0,.12)}
.tourcta{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}@media (max-width:820px){.tourcta{grid-template-columns:1fr}}
.collage{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:12px}.collage img{width:100%;height:100%;object-fit:cover;border-radius:16px}.collage img:first-child{grid-row:span 2}.collage{height:340px}
.form-split{grid-template-columns:1fr 1fr;align-items:start}@media (max-width:860px){.form-split{grid-template-columns:1fr}}
.enq{background:var(--bg);border:1px solid var(--line);border-radius:20px;padding:26px;display:grid;gap:14px;box-shadow:0 14px 34px rgba(15,58,36,.08)}
.enq label{display:grid;gap:5px;font-weight:600;font-size:14px}.enq input,.enq select,.enq textarea{font:inherit;padding:11px 13px;border:1.5px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink)}.enq input:focus,.enq select:focus,.enq textarea:focus{outline:2px solid var(--orange);border-color:var(--orange)}
.enq .pill{border:0;cursor:pointer;justify-self:start;font-family:inherit}.hp{position:absolute!important;left:-9999px!important}
.enqmsg{display:none;padding:12px 14px;border-radius:10px;font-weight:600}.enqmsg.ok{display:block;background:#e6f6ec;color:#14582f}.enqmsg.err{display:block;background:#fdecea;color:#9b2118}
.wa-btn{background:#25d366}.wa-btn:hover{background:#1ebe5a}
.tour{margin:26px 0}.stage{position:relative;border-radius:22px;overflow:hidden;background:var(--green2);aspect-ratio:16/8.5}
.ts{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .6s;pointer-events:none}.ts.on{opacity:1;pointer-events:auto}.ts img{width:100%;height:100%;object-fit:cover}
.ts figcaption{position:absolute;left:0;right:0;bottom:0;padding:70px 28px 24px;color:#fff;background:linear-gradient(transparent,rgba(5,25,15,.88))}.ts figcaption h3{margin:0 0 4px;font-size:clamp(22px,3vw,32px)}.ts figcaption p{margin:0;max-width:640px}
.tn{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:0;background:rgba(255,255,255,.92);font-size:20px;cursor:pointer;z-index:3}.tn.prev{left:14px}.tn.next{right:14px}.tn:hover{background:var(--orange);color:#fff}
.play{position:absolute;top:14px;right:14px;z-index:3;border:0;border-radius:999px;background:rgba(0,0,0,.55);color:#fff;padding:7px 14px;font:600 13px var(--sans);cursor:pointer}
.rail{display:flex;gap:10px;overflow-x:auto;padding:12px 2px}.tt{flex:0 0 130px;border:2px solid transparent;border-radius:12px;background:none;padding:0;cursor:pointer;text-align:left;font:600 12px var(--sans);color:var(--ink)}.tt img{width:100%;height:76px;object-fit:cover;border-radius:10px;opacity:.7}.tt span{display:block;padding:5px 2px}.tt.on{border-color:var(--orange)}.tt.on img,.tt:hover img{opacity:1}
@media (max-width:600px){.stage{aspect-ratio:4/3.4}.ts figcaption{padding:40px 16px 14px}.ts figcaption p{font-size:13.5px}}
.chips{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:10px}.chips div{background:var(--alt);border-radius:14px;padding:16px;text-align:center}.chips b{display:block;font-family:var(--serif);font-size:28px;color:var(--orange)}.chips span{font-size:13px;color:var(--muted)}@media (max-width:760px){.chips{grid-template-columns:repeat(3,1fr)}}
.lb{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:100;display:grid;place-items:center;padding:20px}.lb[hidden]{display:none}.lb img{max-height:88vh;max-width:94vw;border-radius:10px}.lb button{position:absolute;background:rgba(255,255,255,.15);color:#fff;border:0;border-radius:50%;width:46px;height:46px;font-size:24px;cursor:pointer}.lb .x{top:16px;right:16px}.lb .p{left:14px;top:50%}.lb .n{right:14px;top:50%}
.rv{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.slide,.ts{transition:none}}
/* news hero + ticker */
.nhero{position:relative;border-radius:22px;overflow:hidden;height:clamp(260px,34vw,400px)}.nhero img{width:100%;height:100%;object-fit:cover;border-radius:0}.nhero div{position:absolute;inset:auto 0 0;padding:80px 30px 26px;background:linear-gradient(transparent,rgba(5,25,15,.92));color:#fff}.nhero h3{font:700 clamp(22px,3vw,30px) var(--serif);margin:4px 0;color:#fff}.nhero p{margin:0;max-width:620px;color:#ddd}.nhero .nl{color:#ffb27a;font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.ntick{display:flex;gap:12px;margin-top:14px;overflow-x:auto;padding-bottom:6px}.ntick a{flex:0 0 auto;background:var(--alt);border-radius:999px;padding:10px 18px;font-weight:700;font-size:13px;text-decoration:none;color:var(--ink)}.ntick a:hover{background:var(--orange);color:#fff}
.nwrap{display:grid;grid-template-columns:1.5fr 1fr;gap:20px;align-items:stretch}.nwrap .nhero{height:500px}.nfb{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;display:flex;justify-content:center}.nfb iframe{max-width:100%;width:100%;height:500px}
@media (max-width:860px){.nwrap{grid-template-columns:1fr}.nwrap .nhero{height:300px}}
.nfb .fbl{width:100%;height:500px;overflow-y:auto;padding:14px;display:grid;gap:12px;align-content:start}.fbh{font-weight:800;color:var(--green);text-decoration:none}.fbp{display:grid;grid-template-columns:96px 1fr;gap:12px;text-decoration:none;color:var(--ink);background:var(--alt);border-radius:14px;padding:10px;align-items:start}.fbp img{width:96px;height:80px;object-fit:cover;border-radius:10px}.fbp time{font-size:11px;font-weight:800;color:var(--orange);text-transform:uppercase;letter-spacing:.08em}.fbp p{margin:3px 0 0;font-size:13.5px;line-height:1.45}.fbp:hover{background:#efe9db}
.nf{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}.nbig{display:block;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;text-decoration:none;color:var(--ink)}.nbig img{width:100%;height:320px;object-fit:cover;border-radius:0}.nbig div{padding:16px 18px}.nbig time,.nmini time{font-size:11px;font-weight:800;color:var(--orange);text-transform:uppercase;letter-spacing:.08em}.nbig p{margin:6px 0 10px;font-size:15.5px;line-height:1.55}.nbig b{color:#1877f2;font-size:13px}
.nside{display:grid;gap:12px;align-content:start}.nmini{display:grid;grid-template-columns:96px 1fr;gap:12px;background:#fff;border-radius:14px;padding:10px;align-items:center;text-decoration:none;color:var(--ink)}.nmini img{width:96px;height:76px;object-fit:cover;border-radius:10px}.nmini p{margin:3px 0 0;font-size:13.5px;line-height:1.45}.nmini:hover,.nbig:hover{box-shadow:0 10px 26px rgba(15,58,36,.12)}
@media (max-width:860px){.nf{grid-template-columns:1fr}.nbig img{height:220px}}
.cic{display:block;margin-bottom:12px;color:var(--orange)}.cic svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cic{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#fdeadb;margin-bottom:16px}.cic svg{width:28px;height:28px}
/* footer design 19 */
.site-footer{background:#0b2a1a;border-left:10px solid var(--orange);color:#d9e6de;line-height:1.7}.site-footer h3{font-family:var(--serif);font-size:19px;margin:0 0 12px}.site-footer a{text-decoration:none}.site-footer a:hover{color:var(--orange)}
.site-footer .copy{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;text-align:left;border-top:1px solid rgba(255,255,255,.15);color:#9db5a6;padding:16px 0}
.site-footer .cols{grid-template-columns:1.4fr 1fr 1fr 1fr}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer p{margin:0 0 8px}@media (max-width:860px){.site-footer .cols{grid-template-columns:1fr}}
.glance-in{display:grid;grid-template-columns:1fr 1.2fr;gap:40px;align-items:center}.glance-in img{width:100%;height:300px;object-fit:cover;border-radius:22px;box-shadow:0 14px 34px rgba(15,58,36,.14)}.glance-in p{line-height:1.8;font-size:16.5px;margin:0}@media (max-width:860px){.glance-in{grid-template-columns:1fr}.glance-in img{height:220px}}
/* About page (home pattern, design 6) */
.ab-hero{color:#fff;padding:90px 0;background:linear-gradient(90deg,rgba(8,40,22,.95),rgba(8,40,22,.3)),url('../images/home/latest-events.jpeg') center/cover}.ab-hero h1{color:#fff;margin:0;font-size:clamp(36px,5vw,56px)}.ab-hero .crumb a{color:#fff;text-decoration:underline}
.ab-qb{max-width:1180px;margin:-48px auto 0;padding:0 24px;position:relative;z-index:3}.ab-row{background:var(--green);border-radius:22px;box-shadow:0 14px 34px rgba(15,58,36,.25);display:grid;grid-template-columns:repeat(4,1fr)}.ab-row a{padding:20px 22px;font-weight:800;color:#fff;text-decoration:none;border-right:1px solid rgba(255,255,255,.2)}.ab-row a:last-child{border:0}.ab-row a:hover{color:#ffb27a}
.ab-i2,.ab-ac{display:grid;grid-template-columns:1fr 1.1fr;gap:44px;align-items:center}.ab-i2 img,.ab-ac img{width:100%;height:320px;object-fit:cover;border-radius:22px}.ab-ac{grid-template-columns:1fr 1.2fr}
.ab-gc{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ab-gc>div{background:var(--bg);border:1px solid var(--line);border-top:3px solid var(--orange);border-radius:18px;padding:22px}.ab-gc .cic{margin-bottom:14px}.ab-gc p{margin:0;font-size:15px}
.ab-stats{padding:56px 0;color:#e5f0e9;background:linear-gradient(rgba(8,30,18,.86),rgba(8,30,18,.9)),url('../images/home/latest-events.jpeg') center/cover}.ab-stats b{display:block;font:700 42px var(--serif);color:#ffb27a}.ab-stats span{font-size:14px;display:block}
.ab-tk{list-style:none;margin:0;padding:0}.ab-tk li{padding:8px 0 8px 32px;position:relative}.ab-tk li:before{content:"";position:absolute;left:0;top:13px;width:18px;height:18px;border-radius:50%;background:var(--orange)}.ab-tk li:after{content:"";position:absolute;left:6px;top:17px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.ab-cta{background:var(--orange);color:#fff;text-align:center;padding:50px 24px}.ab-cta h2{color:#fff}.ab-cta .pill{background:var(--green);color:#fff}
@media (max-width:860px){.ab-i2,.ab-ac{grid-template-columns:1fr}.ab-gc,.ab-row{grid-template-columns:1fr 1fr}.ab-row a{border-right:0}}
.collage{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr);height:340px;overflow:hidden}.collage img{min-height:0;min-width:0;max-width:100%;max-height:100%}
@media (max-width:820px){.collage{height:300px}}
/* Management page (home pattern, design 2) */
.mg-hero{color:#fff;padding:80px 0;background:linear-gradient(rgba(8,40,22,.78),rgba(8,40,22,.85)),url('../images/life-sharada/auditorium.jpg') center/cover}.mg-hero h1{color:#fff;margin:0;font-size:clamp(34px,5vw,54px)}.mg-hero .crumb a{color:#fff;text-decoration:underline}
.mg-p2{display:grid;grid-template-columns:1.2fr .8fr;gap:44px;align-items:center}.mg-p2 img{width:100%;height:420px;object-fit:cover;object-position:top;border-radius:22px}
.mg-role{color:var(--orange);font-weight:800;font-size:13px;letter-spacing:.06em;text-transform:uppercase;margin:0 0 14px}
.mg-quote{background:var(--green);color:#fff;text-align:center;padding:50px 24px}.mg-quote q{display:block;max-width:880px;margin:0 auto;font:600 clamp(22px,3vw,30px)/1.5 var(--serif);quotes:"\201C" "\201D"}.mg-quote small{display:block;margin-top:14px;color:#ffb27a;font-weight:800;letter-spacing:.08em}
.mg-team img{width:100%;border-radius:22px;border:10px solid #fff;box-shadow:0 14px 34px rgba(15,58,36,.14)}
@media (max-width:860px){.mg-p2{grid-template-columns:1fr}.mg-p2 img{height:320px}}
/* Academics page (home pattern, design 4) */
.ac-hero{color:#fff;padding:80px 0;background:var(--green)}.ac-hero h1{color:#fff;margin:0;font-size:clamp(34px,5vw,54px)}.ac-hero h1:after{content:"";display:block;width:64px;height:4px;background:var(--orange);margin-top:14px;border-radius:4px}.ac-hero .crumb a{color:#fff;text-decoration:underline}
.ac-g3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:28px;align-items:start}.ac-g3 article{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 14px 32px rgba(15,58,36,.12)}.ac-g3 article>img{width:100%;height:200px;object-fit:cover}.ac-g3 article>div{padding:18px 20px 8px}.ac-g3 h3{margin:0 0 8px;color:var(--green)}.ac-g3 p{font-size:14.5px;line-height:1.65;margin:0 0 12px}
.ac-band{background:linear-gradient(rgba(8,30,18,.86),rgba(8,30,18,.9)),url('../images/academics/science-labs.webp') center/cover;color:#fff;padding:46px 24px;text-align:center}.ac-band h2{color:#fff}.ac-row{display:flex;justify-content:center;gap:50px;flex-wrap:wrap;margin-top:18px}.ac-row b{display:block;font:700 40px var(--serif);color:#ffb27a}.ac-row span{font-size:14px}
@media (max-width:980px){.ac-g3{grid-template-columns:1fr 1fr}}@media (max-width:640px){.ac-g3{grid-template-columns:1fr}}
/* one banner for every inner page (same as About) */
.page-hero,.ab-hero,.mg-hero,.ac-hero{color:#fff;padding:90px 0;background:linear-gradient(90deg,rgba(8,40,22,.95),rgba(8,40,22,.3)),url('../images/home/latest-events.jpeg') center/cover!important}
.page-hero h1,.ab-hero h1,.mg-hero h1,.ac-hero h1{color:#fff;margin:0;font-size:clamp(36px,5vw,56px);font-weight:700}
.ac-hero h1:after{display:none}
.page-hero .crumb,.ab-hero .crumb,.mg-hero .crumb,.ac-hero .crumb{margin:0 0 10px}.page-hero .crumb a,.ab-hero .crumb a,.mg-hero .crumb a,.ac-hero .crumb a{color:#fff;text-decoration:underline}
/* CBSE page (home pattern, design 4) */
.cb-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.cb-facts>div{background:var(--bg);border:1px solid var(--line);border-top:3px solid var(--orange);border-radius:18px;padding:20px;text-align:center}.cb-facts b{display:block;font:700 30px var(--serif);color:var(--orange)}.cb-facts span{font-size:13.5px;color:var(--muted)}
.cb-side{display:grid;grid-template-columns:240px 1fr;gap:34px;align-items:start}.cb-nav{position:sticky;top:96px;display:grid;gap:8px}.cb-nav a{background:var(--alt);border-radius:12px;padding:12px 16px;font-weight:700;text-decoration:none;color:var(--ink);font-size:14.5px}.cb-nav a:first-child,.cb-nav a:hover{background:var(--green);color:#fff}
.cb-side h3{scroll-margin-top:96px}
.cb-rows{margin-bottom:28px}.cb-row{display:flex;justify-content:space-between;gap:14px;padding:14px 4px;border-bottom:1px solid var(--line);font-weight:600;text-decoration:none;color:var(--ink)}.cb-row:hover{color:var(--orange)}.cb-row em{font-style:normal;color:var(--orange);font-weight:800;white-space:nowrap}
.cb-kv{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:26px}.cb-kv>div{background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:16px 18px}.cb-kv small{display:block;color:var(--orange);font-weight:800;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase}.cb-kv b{font-weight:700;line-height:1.5;display:block;margin-top:4px;font-size:15px}
@media (max-width:900px){.cb-side{grid-template-columns:1fr}.cb-nav{position:static;grid-auto-flow:column;overflow-x:auto;grid-auto-columns:max-content}.cb-facts{grid-template-columns:1fr 1fr}.cb-kv{grid-template-columns:1fr}}
.cb-rows{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--bg)}.cb-row{padding:14px 20px}.cb-row:last-child{border-bottom:0}.cb-row:hover{background:var(--alt)}
.cb-rows{border:0;border-radius:0;overflow:visible;background:none;display:grid;gap:10px}.cb-row{border:1px solid #cfc8b6;border-radius:12px;background:var(--bg);padding:14px 20px}.cb-row:last-child{border-bottom:1px solid #cfc8b6}.cb-row:hover{border-color:var(--orange);background:var(--alt)}
/* Campus tour (home pattern, design 3): thumbnail list on the left */
.tour{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px;align-items:start}
.tour .stage{grid-column:2;grid-row:1}
.tour .rail{grid-column:1;grid-row:1;flex-direction:column;overflow-y:auto;overflow-x:hidden;height:0;min-height:100%;padding:0 4px 0 0;gap:8px}
.tour .tt{flex:none;display:grid;grid-template-columns:84px 1fr;gap:10px;align-items:center;background:var(--alt);padding:6px;border-radius:12px;border:2px solid transparent}
.tour .tt img{height:58px}.tour .tt span{padding:0;font-size:13px}.tour .tt.on{border-color:var(--orange)}
.chips div{background:var(--bg);border:1px solid var(--line);border-top:3px solid var(--orange)}
@media (max-width:860px){.tour{grid-template-columns:1fr}.tour .stage,.tour .rail{grid-column:1}.tour .rail{grid-row:2;flex-direction:row;overflow-x:auto;overflow-y:hidden;height:auto;min-height:0;padding:12px 2px}.tour .tt{flex:0 0 130px;display:block;padding:0;background:none}.tour .tt img{height:76px}.tour .tt span{padding:5px 2px}}
/* Gallery (home pattern, design 6): white framed photos, 3 across */
.gal6{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:26px}.gal6 a{border:8px solid #fff;box-shadow:0 10px 26px rgba(0,0,0,.14);border-radius:6px;background:#fff}.gal6 img{height:220px;border-radius:0}
@media (max-width:860px){.gal6{grid-template-columns:1fr 1fr}}@media (max-width:520px){.gal6{grid-template-columns:1fr}}
/* Achievers (home pattern, design 2): 3 across, rounded, uncropped posters */
.gal.gal2{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}.gal.gal2 a{border-radius:20px;background:#eee8d9}.gal.gal2 img{height:240px;object-fit:contain;border-radius:0;background:#eee8d9}
@media (max-width:860px){.gal.gal2{grid-template-columns:1fr 1fr}}@media (max-width:520px){.gal.gal2{grid-template-columns:1fr}}
/* Contact page (home pattern, design 2) */
.ct-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.ct-cards>div{background:var(--bg);border:1px solid var(--line);border-top:3px solid var(--orange);border-radius:18px;padding:22px}.ct-cards h3{margin:0 0 6px;font-size:19px}.ct-cards p{margin:0;font-size:14.5px;line-height:1.65}.ct-cards a{text-decoration:none}.ct-cards a:hover{color:var(--orange)}
.ct-btns{margin:22px 0 0;display:flex;gap:12px;flex-wrap:wrap}
.ct-two{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:stretch}.ct-two .map{min-height:420px;border-radius:22px;overflow:hidden;position:relative}.ct-two .map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.ct-two .enq h3{margin:0 0 4px}
@media (max-width:900px){.ct-cards{grid-template-columns:1fr 1fr}.ct-two{grid-template-columns:1fr}.ct-two .map{min-height:300px}}@media (max-width:520px){.ct-cards{grid-template-columns:1fr}}
.ct-two .map iframe{min-height:0;border-radius:0}
