:root{
  --ink:#123a59;--ink-deep:#082d4d;--forest:#315d4d;--lime:#a8cf2d;--red:#f31f2a;--sage:#e7efe8;--cream:#f6f2e9;--paper:#fffdf8;--gold:#b18d4c;--muted:#68736d;--line:rgba(18,58,89,.14);
  --radius:1.35rem;--shadow:0 24px 70px rgba(10,44,67,.13);--shell:min(1220px,calc(100% - 2rem));--header-h:86px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 1rem)}body{margin:0;background:var(--paper);color:#19332b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.shell{width:var(--shell);margin-inline:auto}.section{padding:5.8rem 0}.section-tight{padding:3.8rem 0}.eyebrow{display:inline-flex;align-items:center;gap:.65rem;text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;font-weight:850;color:var(--ink)}.eyebrow:before{content:"";width:2rem;height:1px;background:var(--lime)}.eyebrow-light{color:white}.eyebrow-light:before{background:var(--lime)}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.05;margin:0 0 1rem;font-weight:500;letter-spacing:-.025em}h1{font-size:clamp(3.25rem,8vw,7rem)}h2{font-size:clamp(2.45rem,5vw,4.55rem)}h3{font-size:clamp(1.45rem,2.4vw,2.05rem)}p{margin:0 0 1rem}.lead{font-size:clamp(1.08rem,2vw,1.34rem);color:var(--muted);max-width:66ch}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:3.2rem;padding:.82rem 1.35rem;border-radius:999px;background:var(--ink);color:white;font-weight:800;border:1px solid var(--ink);transition:.25s ease}.btn:hover{transform:translateY(-2px);background:var(--ink-deep);box-shadow:0 12px 28px rgba(8,45,77,.18)}.btn-outline{background:transparent;color:var(--ink)}.btn-light{background:white;color:var(--ink);border-color:white}.btn-small{min-height:2.7rem;padding:.6rem 1rem}.btn-glass{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.55);backdrop-filter:blur(10px)}.btn-ghost-light{background:transparent;border-color:rgba(255,255,255,.4);color:white}.text-link{display:inline-flex;align-items:center;gap:.65rem;font-weight:850;color:var(--ink);margin-top:.75rem}.text-link span{display:grid;place-items:center;width:2rem;height:2rem;border:1px solid var(--line);border-radius:50%;transition:.2s}.text-link:hover span{transform:translate(2px,-2px);background:var(--ink);color:white}.skip-link,.sr-only{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:9999;background:white;padding:.75rem}
.site-header{position:fixed;inset:0 0 auto;z-index:100;background:#fff;box-shadow:0 6px 28px rgba(10,44,67,.08);transition:.3s ease}.header-accent{height:5px;background:linear-gradient(90deg,var(--lime) 0 65%,var(--red) 65% 69%,var(--ink) 69%)}.site-header.is-scrolled{box-shadow:0 10px 38px rgba(10,44,67,.14)}.header-inner{min-height:calc(var(--header-h) - 5px);display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:inline-flex;align-items:center;min-width:0}.brand-logo,.custom-logo{display:block;width:auto;max-width:220px;max-height:62px;object-fit:contain}.menu-toggle{width:3rem;height:3rem;border:1px solid var(--line);background:white;border-radius:50%;display:grid;place-content:center;gap:4px;z-index:4}.menu-toggle span:not(.sr-only){display:block;width:1.2rem;height:2px;background:var(--ink);transition:.25s}.menu-toggle.is-active span:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu-toggle.is-active span:nth-child(2){opacity:0}.menu-toggle.is-active span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.primary-nav{position:fixed;inset:0;background:var(--paper);padding:7rem 1.25rem 2rem;transform:translateX(100%);transition:.35s ease;display:flex;flex-direction:column;gap:1.5rem;overflow:auto}.primary-nav.is-open{transform:none}.primary-nav ul{list-style:none;margin:0;padding:0}.primary-nav>.menu,.primary-nav>ul{display:flex;flex-direction:column;gap:.4rem}.primary-nav li{position:relative}.primary-nav li>a{display:block;padding:.72rem 0;font-weight:800}.primary-nav>.menu>li>a,.primary-nav>ul>li>a{font-size:1.45rem}.menu-item-has-children{padding-right:2.5rem}.submenu-toggle{position:absolute;right:0;top:.45rem;width:2rem;height:2rem;border:1px solid var(--line);border-radius:50%;background:white;color:var(--ink);font-weight:900}.sub-menu{display:none;padding:.25rem 0 .75rem 1rem!important}.submenu-open>.sub-menu{display:block}.sub-menu a{font-size:1rem!important;color:var(--muted)}.nav-actions{display:grid;gap:.8rem}.nav-phone{display:none}.nav-phone span,.nav-phone strong{display:block}.nav-phone span{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.nav-phone strong{font-size:.9rem;color:var(--ink)}
.hero{min-height:calc(100svh - var(--header-h));margin-top:var(--header-h);position:relative;display:grid;align-items:end;overflow:hidden;background:#0d2f4a;color:white}.hero-media{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,24,39,.08),rgba(3,24,39,.22) 40%,rgba(3,24,39,.84))}.hero-content{position:relative;z-index:2;padding:7rem 0 4.5rem}.hero h1{max-width:11.5ch;text-shadow:0 4px 30px rgba(0,0,0,.2)}.hero .lead{color:rgba(255,255,255,.84);max-width:58ch}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.hero-kicker{display:flex;gap:1rem;align-items:center;font-size:.78rem;text-transform:uppercase;letter-spacing:.15em;font-weight:800}.hero-kicker:before{content:"";width:2.6rem;height:1px;background:var(--lime)}.hero-scroll{position:absolute;z-index:3;right:1rem;bottom:1.25rem;display:flex;align-items:center;gap:.55rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:rgba(255,255,255,.75)}.hero-scroll span{display:block;width:1px;height:2.5rem;background:rgba(255,255,255,.5)}
.trust-strip{background:var(--ink);color:white}.trust-grid{display:grid;grid-template-columns:repeat(2,1fr)}.trust-item{padding:1.5rem;border-right:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}.trust-item strong{display:block;font-family:Georgia,serif;font-size:1.5rem}.trust-item span{font-size:.75rem;color:rgba(255,255,255,.68)}
.welcome-grid{display:grid;gap:1.5rem}.welcome-copy h2{max-width:13ch}.welcome-body{align-self:end}.story-strip{background:var(--cream)}.story-grid{display:grid;gap:1rem}.story-image{margin:0;border-radius:var(--radius);overflow:hidden;min-height:22rem}.story-image img{width:100%;height:100%;object-fit:cover}.story-copy{padding:1.5rem 0;align-self:center}.story-copy h2{max-width:12ch}
.projects-pin{background:#edf2ef;overflow:hidden}.project-carousel{position:relative}.project-controls{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;padding:0 max(1rem,calc((100vw - 1220px)/2)) 1rem}.project-control{width:2.75rem;height:2.75rem;border:1px solid var(--line);border-radius:50%;background:white;color:var(--ink);font-size:1.25rem;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 25px rgba(10,44,67,.08)}.project-control:disabled{opacity:.35;cursor:not-allowed}.project-control-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.projects-heading{display:grid;gap:1.25rem;margin-bottom:2rem}.projects-heading h2{max-width:13ch}.project-track{display:flex;gap:1rem;width:max-content;padding-inline:max(1rem,calc((100vw - 1220px)/2));padding-bottom:1rem}.project-card{width:min(84vw,430px);min-height:34rem;border-radius:1.55rem;overflow:hidden;position:relative;color:white;flex:none;box-shadow:var(--shadow)}.project-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:.5s ease}.project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,26,41,.08) 12%,transparent 36%,rgba(4,26,41,.9))}.project-card:hover img{transform:scale(1.035)}.project-card-top{position:absolute;z-index:2;top:1rem;left:1rem;right:1rem;display:flex;justify-content:space-between;align-items:center}.project-card-top span{padding:.42rem .72rem;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.38);backdrop-filter:blur(8px);font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}.project-card-top b{display:grid;place-items:center;width:2.45rem;height:2.45rem;background:white;color:var(--ink);border-radius:50%}.project-card-copy{position:absolute;inset:auto 1.35rem 1.35rem;z-index:2}.project-card p{color:rgba(255,255,255,.82)}.project-tag{display:inline-block;margin-bottom:.6rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.72)}
.section-heading,.life-heading{display:grid;gap:1rem;margin-bottom:2.25rem}.section-heading h2,.life-heading h2{max-width:13ch}.services-grid{display:grid;gap:1rem}.service-card{padding:1.45rem;border:1px solid var(--line);border-radius:var(--radius);background:white;min-height:14rem;transition:.25s}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:rgba(168,207,45,.55)}.service-top{display:flex;justify-content:space-between;align-items:center}.service-num{font-family:Georgia,serif;color:var(--gold);font-size:1.18rem}.service-arrow{display:grid;place-items:center;width:2rem;height:2rem;border:1px solid var(--line);border-radius:50%}.service-card p{color:var(--muted);font-size:.94rem}.life-section{background:#fff}.life-gallery{display:grid;gap:1rem}.life-card{margin:0;min-height:22rem;border-radius:var(--radius);overflow:hidden;position:relative}.life-card img{width:100%;height:100%;object-fit:cover}.life-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(7,29,22,.76))}.life-card figcaption{position:absolute;z-index:2;left:1.2rem;right:1.2rem;bottom:1.1rem;color:white}.life-card figcaption strong,.life-card figcaption span{display:block}.life-card figcaption strong{font-family:Georgia,serif;font-size:1.5rem}.life-card figcaption span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.72)}
.split{display:grid;gap:2rem}.split-media{border-radius:var(--radius);overflow:hidden;min-height:28rem}.split-media img{width:100%;height:100%;object-fit:cover}.split-copy{align-self:center}.care-points{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin:1.5rem 0 2rem}.care-points div{padding:1rem;border:1px solid var(--line);border-radius:1rem;background:white}.care-points strong,.care-points span{display:block}.care-points span{font-size:.82rem;color:var(--muted)}.cta-panel{background:var(--ink-deep);color:white;border-radius:1.8rem;padding:2rem;display:grid;gap:1.5rem;align-items:center;overflow:hidden;position:relative}.cta-panel:after{content:"";position:absolute;width:15rem;height:15rem;border-radius:50%;background:var(--lime);opacity:.08;right:-5rem;top:-5rem}.cta-panel .lead{color:rgba(255,255,255,.72)}.cta-actions{display:flex;flex-wrap:wrap;gap:.75rem;position:relative;z-index:2}
.page-hero{padding:calc(var(--header-h) + 5rem) 0 4rem;background:var(--cream)}.page-hero h1{font-size:clamp(3rem,7vw,5.8rem);max-width:13ch}.content-grid{display:grid;gap:2rem}.prose{max-width:75ch}.prose h2,.prose h3{margin-top:2rem}.legal{max-width:850px}.project-hero{min-height:76svh}.presidency-hero{background:#102a23}.landing-trust{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.25rem}.pill{border:1px solid var(--line);border-radius:999px;padding:.5rem .75rem;font-size:.78rem;font-weight:700}.form-card{padding:1.35rem;background:white;border-radius:var(--radius);box-shadow:var(--shadow)}.form-grid{display:grid;gap:.8rem}.form-grid input,.form-grid textarea,.form-grid select{width:100%;padding:.9rem 1rem;border:1px solid var(--line);border-radius:.8rem;background:var(--paper)}.form-grid textarea{min-height:8rem}.contact-grid{display:grid;gap:1rem}.contact-card{padding:1.35rem;border:1px solid var(--line);border-radius:var(--radius);background:white}.site-footer{background:#071f33;color:white;padding:4rem 0 6rem}.footer-grid{display:grid;gap:2.2rem}.footer-intro{color:rgba(255,255,255,.65);max-width:35ch}.site-footer h3{font-family:inherit;font-size:.85rem;text-transform:uppercase;letter-spacing:.14em}.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.site-footer .sub-menu,.site-footer .submenu-toggle{display:none!important}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.12);margin-top:2.5rem;padding-top:1.5rem;color:rgba(255,255,255,.55);font-size:.82rem}.brand-footer{display:inline-flex}.footer-logo{display:block;width:min(100%,310px);height:auto;object-fit:contain}.brand-footer .brand-copy small{color:rgba(255,255,255,.55)}.mobile-action-bar{position:fixed;z-index:99;inset:auto .6rem .6rem;display:grid;grid-template-columns:repeat(3,1fr);background:white;border-radius:999px;padding:.35rem;box-shadow:0 15px 50px rgba(0,0,0,.22)}.mobile-action-bar a{text-align:center;padding:.65rem;font-weight:800;font-size:.8rem}.mobile-action-bar a:last-child{background:var(--ink);color:white;border-radius:999px}.reveal{opacity:0;transform:translateY(26px)}
@media(max-width:979px){.projects-pin{overflow:visible}.project-track{width:100%;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:1rem;padding-inline:1rem;padding-bottom:1.25rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}.project-track::-webkit-scrollbar{display:none}.project-card{scroll-snap-align:start;scroll-snap-stop:always}.project-controls{padding-inline:1rem}.project-control-label{margin-right:auto}.footer-logo{max-width:270px}}
@media(min-width:720px){.welcome-grid{grid-template-columns:1fr 1fr;gap:4rem}.story-grid{grid-template-columns:1fr 1fr}.story-image-tall{grid-row:1/3;min-height:45rem}.story-copy{padding:2.5rem}.services-grid{grid-template-columns:repeat(2,1fr)}.life-gallery{grid-template-columns:repeat(2,1fr)}.life-card-wide{grid-column:span 2}.contact-grid{grid-template-columns:repeat(3,1fr)}.cta-panel{grid-template-columns:1.5fr auto;padding:3rem}.form-grid.two{grid-template-columns:repeat(2,1fr)}.form-grid .full{grid-column:1/-1}}
@media(min-width:980px){.project-controls{display:none}:root{--shell:min(1220px,calc(100% - 4rem));--header-h:98px}.section{padding:7.7rem 0}.menu-toggle{display:none}.primary-nav{position:static;inset:auto;background:transparent;padding:0;transform:none;display:flex;flex-direction:row;align-items:center;gap:1.45rem;overflow:visible}.primary-nav>.menu,.primary-nav>ul{flex-direction:row;align-items:center;gap:1.2rem}.primary-nav>.menu>li>a,.primary-nav>ul>li>a{font-size:.9rem;padding:1.4rem 0}.menu-item-has-children{padding-right:0}.submenu-toggle{display:none}.sub-menu{position:absolute;display:block!important;top:calc(100% - .3rem);left:-1rem;min-width:220px;padding:.6rem!important;background:white;border:1px solid var(--line);border-radius:1rem;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}.menu-item-has-children:hover>.sub-menu,.menu-item-has-children:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}.sub-menu a{padding:.62rem .75rem!important;border-radius:.65rem}.sub-menu a:hover{background:var(--cream);color:var(--ink)}.nav-actions{display:flex;align-items:center;gap:1rem}.nav-phone{display:block}.brand-logo,.custom-logo{max-width:250px;max-height:70px}.hero-content{padding:9rem 0 5.5rem}.hero-scroll{right:2rem;bottom:2rem}.trust-grid{grid-template-columns:repeat(4,1fr)}.trust-item{padding:1.75rem 2rem;border-bottom:0}.projects-heading{grid-template-columns:1.2fr .8fr;align-items:end}.section-heading{grid-template-columns:1fr auto;align-items:end}.services-grid{grid-template-columns:repeat(3,1fr)}.life-gallery{grid-template-columns:repeat(12,1fr);grid-auto-rows:18rem}.life-card{min-height:0}.life-card:nth-child(1){grid-column:span 7;grid-row:span 2}.life-card:nth-child(2){grid-column:span 5}.life-card:nth-child(3){grid-column:span 5}.life-card:nth-child(4){grid-column:span 12;grid-row:span 2}.split{grid-template-columns:1.05fr .95fr;gap:5rem}.split.reverse .split-media{order:2}.footer-grid{grid-template-columns:1.6fr .8fr 1fr 1fr}.mobile-action-bar{display:none}.content-grid{grid-template-columns:1fr 1fr}.project-card{width:440px}.project-track{gap:1.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}*{animation-duration:.001ms!important;transition-duration:.001ms!important}}

/* v2.1: fixed header clearance on all internal templates */
.tf-page,.tf-projects-page,.tf-project-page,.about-page,.pres-final,.tf-contact-page,.tf-nri-page{padding-top:var(--header-h)}
@media(max-width:700px){
  :root{--header-h:112px}
  .brand-logo,.custom-logo{max-width:215px;max-height:78px}
  .tf-hero h1,.page-hero h1{overflow-wrap:anywhere}
}

/* v2.1.1: About page responsive image and layout fixes */
.about-hero{position:relative;min-height:clamp(32rem,72svh,50rem);display:grid;align-items:end;overflow:hidden;background:var(--ink-deep);color:#fff}
.about-hero-media,.about-hero-overlay{position:absolute;inset:0}
.about-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 42%}
.about-hero-overlay{background:linear-gradient(180deg,rgba(4,30,47,.08) 10%,rgba(4,30,47,.28) 52%,rgba(4,30,47,.86) 100%)}
.about-hero-content{position:relative;z-index:2;padding:clamp(4rem,10vw,8rem) 0 clamp(3rem,7vw,5rem)}
.about-hero-content h1{max-width:12ch;font-size:clamp(2.8rem,8vw,6.6rem)}
.about-hero-content .lead{color:rgba(255,255,255,.82)}
.about-trust-strip{background:var(--ink);color:#fff}
.about-trust-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.about-trust-grid>div{padding:1.25rem;border-right:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.about-trust-grid strong,.about-trust-grid span{display:block}.about-trust-grid strong{font-family:Georgia,serif;font-size:1.25rem}.about-trust-grid span{font-size:.78rem;color:rgba(255,255,255,.68)}
.about-intro-grid,.about-philosophy-grid,.about-terca-grid{display:grid;gap:2rem;align-items:center}
.about-intro-image,.about-philosophy-image{margin:0;border-radius:var(--radius);overflow:hidden;background:#e9ece8;box-shadow:var(--shadow)}
.about-intro-image{aspect-ratio:4/3}.about-philosophy-image{aspect-ratio:4/3}
.about-intro-image img,.about-philosophy-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.about-intro-image figcaption{padding:.8rem 1rem;background:#fff;color:var(--muted);font-size:.82rem}
.about-pillars-grid,.about-values-grid,.about-awards-grid{display:grid;gap:1rem}
.about-pillar,.about-values-grid article,.about-awards-grid article{padding:1.4rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff}
.about-pillar>span{display:block;color:var(--gold);font-family:Georgia,serif;margin-bottom:1rem}
.about-purpose-section,.about-recognition-section{background:#f1f5f2}
.about-philosophy-section{background:var(--paper)}
.about-check-list{margin:1.5rem 0 0;padding:0;list-style:none;display:grid;gap:.7rem}
.about-check-list li{position:relative;padding-left:1.65rem}.about-check-list li:before{content:'✓';position:absolute;left:0;color:var(--forest);font-weight:900}
.about-values-section{background:var(--ink-deep);color:#fff}.about-values-grid article{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.13)}.about-values-grid article p{color:rgba(255,255,255,.7)}
.about-terca-card{padding:1.7rem;border-radius:var(--radius);background:var(--forest);color:#fff}.about-terca-card strong,.about-terca-card span{display:block}.about-terca-card strong{font-family:Georgia,serif;font-size:2.5rem}.about-terca-card span{color:rgba(255,255,255,.72)}
.about-terca-card ul{margin:1.25rem 0 0;padding-left:1.1rem}
@media(max-width:719px){
  .about-hero{min-height:36rem}
  .about-hero-media img{object-position:center center}
  .about-hero-content{padding:5rem 0 3rem}
  .about-intro-image,.about-philosophy-image{aspect-ratio:4/3;min-height:0}
  .about-intro-image img,.about-philosophy-image img{object-fit:cover;object-position:center}
  .about-intro-grid,.about-philosophy-grid{gap:1.5rem}
}
@media(min-width:720px){
  .about-intro-grid,.about-philosophy-grid,.about-terca-grid{grid-template-columns:1fr 1fr;gap:4rem}
  .about-pillars-grid,.about-values-grid,.about-awards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-trust-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .about-trust-grid>div{border-bottom:0}
}
@media(min-width:980px){
  .about-intro-image{aspect-ratio:4/5}
  .about-philosophy-image{aspect-ratio:4/5}
  .about-pillars-grid,.about-values-grid,.about-awards-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
