:root{--navy:#1c2c46;--coral:#e8655c;--rose:#f49a89;--gold:#f3b52c;--cream:#fff8ef;--paper:#fffdf9;--ink:#243049;--muted:#667083;--sky:#dceaf1;--shadow:0 22px 55px rgba(28,44,70,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,var(--cream),var(--paper));color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}img{display:block;max-width:100%}a{color:inherit}h1,h2,h3,blockquote,.logo>span{font-family:Georgia,"Times New Roman",serif;line-height:1.08}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3rem,6vw,6rem);letter-spacing:-.045em;font-weight:500}h2{font-size:clamp(2.1rem,4vw,4rem);letter-spacing:-.035em;font-weight:500}h3{font-size:1.35rem}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:.75rem 5vw;background:rgba(255,248,239,.95);border-bottom:1px solid rgba(28,44,70,.12);backdrop-filter:blur(12px)}.logo{display:flex;align-items:center;gap:.8rem;text-decoration:none;color:var(--navy);font-weight:700}.logo img{width:72px;height:54px;object-fit:cover;object-position:top}.logo span{font-size:1.05rem}.logo small{display:block;font-family:Arial,sans-serif;font-size:.64rem;letter-spacing:.13em;text-transform:uppercase;color:var(--coral)}.site-nav{display:flex;align-items:center;gap:1.5rem}.site-nav a{text-decoration:none;font-size:.88rem;font-weight:800}.site-nav a.active{color:var(--coral)}.nav-button{padding:.7rem 1rem;border-radius:999px;background:var(--gold);color:var(--navy)}.nav-toggle{display:none;border:0;background:transparent}.nav-toggle span{display:block;width:25px;height:2px;margin:5px;background:var(--navy)}.hero{position:relative;min-height:78vh;display:flex;align-items:center;padding:7rem 6vw;overflow:hidden}.home-hero{background:radial-gradient(circle at 86% 22%,rgba(244,154,137,.58),transparent 23%),radial-gradient(circle at 74% 68%,rgba(243,181,44,.45),transparent 25%),linear-gradient(135deg,#fff8ef 35%,#f4dfdc)}.hero-copy{position:relative;z-index:2;max-width:950px}.hero-copy h1{max-width:900px;color:var(--navy)}.hero-copy>p:not(.eyebrow){max-width:690px;font-size:1.25rem;color:var(--muted)}.eyebrow{margin-bottom:.8rem;color:var(--coral);font-size:.72rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.eyebrow.light{color:#ffd6cc}.actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.85rem 1.25rem;border-radius:999px;text-decoration:none;font-weight:900}.button.primary{background:var(--navy);color:white;box-shadow:0 13px 30px rgba(28,44,70,.2)}.button.secondary{background:white;color:var(--coral);border:1px solid rgba(232,101,92,.35)}.button.gold{background:var(--gold);color:var(--navy)}.welcome-card,.section{margin-left:6vw;margin-right:6vw}.welcome-card{position:relative;margin-top:-2rem;padding:3.5rem 4rem;border-radius:2rem;background:rgba(255,255,255,.95);border-top:8px solid var(--coral);box-shadow:var(--shadow)}.welcome-card h2{max-width:850px;color:var(--navy)}.welcome-card>p:last-child{max-width:850px;color:var(--muted);font-size:1.1rem}.section{padding:7rem 0}.split,.portrait-teaser,.contact-section,.story-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6vw}.feature-image{width:100%;min-height:540px;object-fit:cover;border-radius:2rem;box-shadow:var(--shadow)}.split>div>p,.portrait-teaser>div>p,.story-grid>div>p{color:var(--muted);font-size:1.08rem}.check-list{display:grid;gap:.7rem;padding:0;list-style:none}.check-list li{position:relative;padding:.65rem 1rem .65rem 2.6rem;border-bottom:1px solid rgba(28,44,70,.12)}.check-list li:before{content:"✦";position:absolute;left:.6rem;color:var(--gold)}.band{display:flex;align-items:center;justify-content:space-between;gap:3rem;margin:0 3vw;padding:4.5rem 6vw;border-radius:2.3rem;background:linear-gradient(125deg,var(--navy),#374a6d);color:white}.band h2{max-width:800px;margin-bottom:0}.portrait-frame{height:600px;border-radius:2rem;overflow:hidden;background:var(--sky);box-shadow:var(--shadow)}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:center 20%}.text-link{color:var(--coral);font-weight:900;text-underline-offset:5px}.contact-section{padding-top:4rem}.contact-section>div:first-child>p:last-child{color:var(--muted);font-size:1.08rem}.contact-card{padding:3rem;border-radius:2rem;background:white;box-shadow:var(--shadow);border-bottom:7px solid var(--gold)}.contact-card p{color:var(--muted)}.contact-card p span{display:block;color:var(--coral);font-size:.7rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.contact-card p a{font-family:Georgia,serif;font-size:1.3rem;color:var(--navy)}footer{padding:2rem 6vw;border-top:1px solid rgba(28,44,70,.12);text-align:center;color:var(--muted);font-size:.8rem}.page-hero,.about-hero{display:grid;grid-template-columns:1fr 1fr;min-height:70vh;align-items:center;background:linear-gradient(135deg,#fff7ed,#f5d4d0)}.page-hero>div,.about-hero>div:last-child{padding:7vw}.page-hero>div>p:last-child,.about-hero>div:last-child>p{font-size:1.18rem;color:var(--muted)}.page-hero>img{width:100%;height:70vh;object-fit:cover}.intro-centered{max-width:1000px;margin-left:auto;margin-right:auto;text-align:center}.intro-centered>p:last-child{max-width:780px;margin-left:auto;margin-right:auto;color:var(--muted);font-size:1.1rem}.card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.3rem;padding-top:2rem}.service-card{padding:3.5rem;border-radius:2rem;box-shadow:var(--shadow)}.service-card.coral{background:#fff0ec;border-top:8px solid var(--coral)}.service-card.navy{background:var(--navy);color:#eef2f7;border-top:8px solid var(--gold)}.service-card.navy h2{color:white}.service-card h3{color:var(--coral)}.number{display:block;margin-bottom:2rem;color:var(--gold);font-weight:900}.quote-block{display:grid;gap:2rem;justify-items:start;margin:0 3vw 6rem;padding:5rem 7vw;border-radius:2.3rem;background:linear-gradient(135deg,var(--coral),#d54a58);color:white}.quote-block blockquote{max-width:1000px;margin:0;font-size:clamp(2rem,4.5vw,4.5rem)}.about-photo{height:70vh;overflow:hidden}.about-photo img{width:100%;height:100%;object-fit:cover;object-position:center 14%}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:0 6vw 7rem}.values article{padding:2.5rem;border-radius:1.6rem;background:white;box-shadow:var(--shadow);border-top:6px solid var(--gold)}.values article:nth-child(2){border-top-color:var(--coral)}.values article:nth-child(3){border-top-color:var(--navy)}.values article span{color:var(--coral);font-size:.72rem;font-weight:900}.values article p{color:var(--muted)}
@media(max-width:850px){.nav-toggle{display:block}.site-nav{position:absolute;top:76px;left:4vw;right:4vw;display:none;flex-direction:column;align-items:flex-start;padding:1.2rem;border-radius:1rem;background:var(--cream);box-shadow:var(--shadow)}.site-nav.open{display:flex}.hero{min-height:70vh;padding:5rem 5vw}.welcome-card{padding:2.2rem}.section{padding:5rem 0}.split,.portrait-teaser,.contact-section,.story-grid,.page-hero,.about-hero,.card-grid,.values{grid-template-columns:1fr}.feature-image{min-height:340px}.band{align-items:flex-start;flex-direction:column}.portrait-frame{height:480px}.page-hero>img{height:400px}.about-photo{height:520px}.about-photo{order:2}.values{margin-bottom:5rem}.logo img{width:58px}.logo span{font-size:.9rem}.logo small{display:none}}
@media(max-width:480px){h1{font-size:2.75rem}.site-header{padding:.65rem 4vw}.welcome-card,.section{margin-left:4vw;margin-right:4vw}.welcome-card,.service-card,.contact-card{padding:2rem}.page-hero>div,.about-hero>div:last-child{padding:3.5rem 5vw}.portrait-frame{height:420px}.values{margin-left:4vw;margin-right:4vw}.nav-button{padding:.65rem .8rem}}

/* Prominent butterfly badge and responsive contact details. */
.logo img{width:88px;height:88px;flex:0 0 88px;object-fit:contain;object-position:center;border-radius:50%;background:var(--cream);border:2px solid rgba(243,181,44,.65);box-shadow:0 7px 18px rgba(28,44,70,.12)}
.contact-card a{overflow-wrap:anywhere}
@media(max-width:850px){.site-nav{top:100%}.logo img{width:72px;height:72px;flex-basis:72px}.site-header{gap:1rem}}

/* Training badges retain their original artwork and proportions. */
.training-badges{margin:0 6vw 6rem;padding:3rem clamp(1.25rem,4vw,4rem);background:#fff;border:1px solid rgba(28,44,70,.1);border-radius:2rem;text-align:center}
.training-badges h2{font-size:clamp(2rem,3vw,3rem);margin-bottom:2.5rem}
.training-badge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;align-items:start}
.training-badge-grid figure{margin:0;min-width:0}
.training-badge-grid img{width:100%;height:230px;object-fit:contain;margin:0 auto 1.5rem}
.training-badge-grid a{display:block;border-radius:.5rem}
.training-badge-grid a:focus-visible{outline:3px solid var(--coral);outline-offset:6px}
.training-badge-grid figcaption{font-size:.92rem;line-height:1.5;color:var(--muted)}
.training-badge-grid strong{color:var(--navy)}
@media(max-width:700px){.training-badge-grid{grid-template-columns:1fr;gap:2.5rem}.training-badge-grid img{max-width:300px;height:230px}.training-badges{margin-left:4vw;margin-right:4vw}}