/* OD-LAYOUT-PRIMITIVES v1 — structure only: display, flex/grid, overflow, wrapping, ratio. */
@layer od-layout {
  :where(.od-stack,.od-row,.od-row-top,.od-cluster,.od-grid,.od-field,.od-stat,.od-cell,.od-tile) > :where(*) { min-width: 0; }
  .od-stack { display:flex; flex-direction:column; gap:var(--od-gap,8px); }
  .od-row { display:flex; align-items:center; gap:var(--od-gap,8px); }
  .od-row-top { display:flex; align-items:flex-start; gap:var(--od-gap,8px); }
  .od-cluster { display:flex; flex-wrap:wrap; align-items:center; gap:var(--od-gap,8px); }
  .od-fill { flex:1 1 0; min-width:0; }
  .od-fixed { flex:none; }
  .od-grid { display:grid; gap:var(--od-gap,12px); grid-template-columns:repeat(var(--od-cols,3),minmax(0,1fr)); }
  .od-stat,.od-field,.od-cell { display:grid; gap:var(--od-gap,2px); }
  :where(.od-stat,.od-field,.od-cell) > :where(*) { display:block; }
  .od-tile { display:grid; grid-template-rows:auto 1fr; }
  :where(.od-tile) > :where(*) { display:block; }
  .od-media { display:block; width:100%; height:auto; aspect-ratio:var(--od-ratio,auto); }
  .od-media-cover { object-fit:cover; }
  .od-truncate { display:block; max-width:100%; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
  .od-clamp-2,.od-clamp-3 { display:-webkit-box; -webkit-box-orient:vertical; overflow:hidden; overflow-wrap:anywhere; }
  .od-clamp-2 { -webkit-line-clamp:2; }
  .od-clamp-3 { -webkit-line-clamp:3; }
  .od-lines-2 { min-height:calc(2 * 1.4em); }
  .od-nowrap { white-space:nowrap; }
  .od-keep { word-break:keep-all; overflow-wrap:anywhere; }
  .od-screen { display:grid; grid-template-rows:auto minmax(0,1fr) auto; height:100%; }
  .od-scroll { overflow-y:auto; overscroll-behavior:contain; min-height:0; }
  .od-rail { display:flex; gap:var(--od-gap,8px); overflow-x:auto; scroll-snap-type:x proximity; scrollbar-width:none; padding-inline:var(--od-rail-pad,16px); scroll-padding-inline:var(--od-rail-pad,16px); }
  .od-rail::-webkit-scrollbar { display:none; }
  :where(.od-rail) > :where(*) { flex:none; scroll-snap-align:start; }
  :where(.od-rail) > :where(:last-child) { margin-inline-end:var(--od-rail-pad,16px); }
  .od-spacer { flex:none; visibility:hidden; pointer-events:none; }
  .od-touch { min-width:44px; min-height:44px; }
}
/* /OD-LAYOUT-PRIMITIVES v1 */
@font-face{font-family:Lato;src:url('assets/lato-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Lato;src:url('assets/lato-bold.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:'Playfair Display';src:url('assets/playfair-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--green:#1a3d3d;--green-hover:#153030;--ink:#2f2f2f;--muted:#595f60;--paper:#f7f7f5;--white:#fff;--dark:#2a2628;--line:#d6dedc;--soft:#e9efed;--on-green:#e0e9e6;--error:#a52727;--display:'Playfair Display',Georgia,serif;--body:Lato,system-ui,sans-serif;--small:1rem;--body-size:1.125rem;--h1:clamp(2.75rem,4.7vw,4rem);--h2:clamp(2rem,3.3vw,2.75rem);--h3:1.5rem;--s1:4px;--s2:8px;--s3:16px;--s4:24px;--s5:32px;--s6:48px;--s7:64px;--s8:96px;--radius:4px;--duration:200ms;--measure:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:var(--small);line-height:1.65}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.16;text-wrap:balance}h1{font-size:var(--h1);letter-spacing:-.045em}h2{font-size:var(--h2);letter-spacing:-.025em}h3{font-size:var(--h3);letter-spacing:-.015em}p{max-width:72ch}a{color:inherit;text-underline-offset:5px}a,button,summary{cursor:pointer}button,input,select,textarea{font:inherit}button{color:inherit}button:disabled{cursor:wait}button,a,input,select,textarea,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,video:focus-visible{outline:3px solid #97752c;outline-offset:5px}::selection{background:var(--green);color:var(--white)}[hidden]{display:none!important}.wrap{width:min(calc(100% - 96px),var(--measure));margin-inline:auto}.section{padding-block:var(--s8)}.eyebrow{font-size:var(--small);letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--green);display:block}.rule-label{display:flex;align-items:center;gap:var(--s3)}.rule-label:before{content:'';display:block;width:32px;height:1px;background:currentColor;flex:none}.muted{color:var(--muted)}.icon{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.skip{position:fixed;left:16px;top:16px;z-index:30;transform:translateY(-200%);background:var(--white);padding:var(--s3)}.skip:focus{transform:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--s3);min-height:56px;padding:var(--s3) var(--s4);background:var(--green);color:var(--white);text-decoration:none;border:1px solid var(--green);border-radius:var(--radius);font-weight:700;line-height:1.3;transition:background var(--duration),transform var(--duration);white-space:nowrap}.button .icon{width:20px;height:20px}.text-link{display:inline-flex;align-items:center;gap:var(--s3);min-height:44px;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor}.header{background:var(--white);border-bottom:1px solid var(--line)}.header-inner{min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:var(--s5)}.brand{display:block;flex:none;width:184px}.nav{display:flex;align-items:center;gap:var(--s5)}.nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-size:var(--small)}.header-contact{border:1px solid var(--line);padding:var(--s2) var(--s3);border-radius:var(--radius);gap:var(--s2);color:var(--green);font-weight:700}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:var(--s2);border-radius:var(--radius)}.hero{padding-top:var(--s7);padding-bottom:var(--s7)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center;gap:var(--s8)}.hero-copy{--od-gap:24px}.hero h1{max-width:13ch;color:var(--green)}.hero h1 em{font-weight:400}.hero-intro{font-size:var(--body-size);color:var(--muted);max-width:49ch}.hero-action{padding-top:var(--s2);--od-gap:16px;align-items:flex-start}.hero-hint{font-size:var(--small);color:var(--muted);max-width:44ch}.identity{border-top:1px solid var(--line);padding-top:var(--s4);margin-top:var(--s2);--od-gap:4px}.identity strong{font-weight:700}.identity span{font-size:var(--small);color:var(--muted)}.hero-media{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:var(--s3)}.video-frame{width:min(100%,320px);background:var(--green);border-radius:var(--radius);position:relative;box-shadow:16px 16px 0 var(--soft)}.video-frame video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;border-radius:var(--radius)}.video-cover{position:absolute;bottom:24px;left:24px;right:24px;display:flex;align-items:center;justify-content:center;gap:var(--s2);border:0;background:var(--white);color:var(--green);min-height:56px;padding:var(--s3);border-radius:var(--radius);font-weight:700}.video-caption{display:grid;gap:var(--s1);max-width:340px;padding-top:var(--s2);font-size:var(--small)}.video-caption .video-note{font-size:var(--small);color:var(--muted)}.video-error{color:var(--error);max-width:340px}.service-strip{border-block:1px solid var(--line);background:var(--white)}.strip-inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-block:var(--s4)}.strip-item{display:flex;align-items:center;justify-content:center;gap:var(--s3);color:var(--green)}.strip-item+.strip-item{border-left:1px solid var(--line)}.strip-item .icon{width:24px;height:24px}.section-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--s8);align-items:end;margin-bottom:var(--s6)}.section-heading h2{margin-top:var(--s3);max-width:20ch;color:var(--green)}.section-heading p{color:var(--muted);font-size:var(--body-size)}.services{background:var(--paper)}.service-grid{--od-cols:3;--od-gap:32px}.service{padding-top:var(--s4);border-top:1px solid var(--green);--od-gap:24px}.service-number{color:var(--muted);font-size:var(--small);letter-spacing:.08em}.service h3{color:var(--green)}.service p{color:var(--muted)}.service-bottom{margin-top:var(--s6);padding-top:var(--s4);border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:var(--s5)}.service-bottom p{max-width:64ch;color:var(--muted)}.service-bottom a{flex:none;color:var(--green)}.audience{background:var(--green);color:var(--white)}.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s8)}.audience .eyebrow{color:var(--on-green)}.audience h2{margin-block:var(--s4);max-width:19ch}.audience p{color:var(--on-green)}.audience-list{list-style:none;margin:var(--s5) 0 0;padding:0}.audience-list li{padding-block:var(--s3);border-bottom:1px solid #496565;display:flex;align-items:center;gap:var(--s3)}.audience-list li:first-child{border-top:1px solid #496565}.situations{padding-top:var(--s6)}.situations h3{margin-bottom:var(--s4)}.situation{display:grid;grid-template-columns:32px 1fr;gap:var(--s3);padding-block:var(--s3)}.situation>span{color:#b9ceca}.situation strong{display:block;font-weight:700}.situation p{margin-top:var(--s1)}.process{background:var(--white)}.process .section-heading{align-items:start}.steps{--od-cols:4;--od-gap:32px;list-style:none;padding:0;margin:0;counter-reset:step}.step{border-top:1px solid var(--line);padding-top:var(--s4);--od-gap:16px}.step-number{font-family:var(--display);font-size:2rem;color:var(--green)}.step h3{font-size:var(--h3)}.step p{color:var(--muted)}.process-note{margin-top:var(--s6);padding-top:var(--s4);border-top:1px solid var(--line);color:var(--muted)}.about-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:var(--s8);align-items:center}.portrait{max-width:400px}.portrait img{border-radius:var(--radius)}.portrait figcaption{display:block;padding-top:var(--s3);color:var(--muted)}.about-copy{--od-gap:24px}.about-copy h2{color:var(--green)}.credentials{--od-gap:16px;padding-block:var(--s4);border-block:1px solid var(--line)}.credential{--od-gap:4px}.credential strong{font-size:var(--small)}.credential span{color:var(--muted)}.about-copy>.text-link{align-self:flex-start;color:var(--green)}.faq{background:var(--white)}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:var(--s8)}.faq-intro{--od-gap:24px;align-items:flex-start}.faq-intro h2{color:var(--green)}.faq-intro p{color:var(--muted)}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:var(--s4);padding-block:var(--s4);font-size:var(--body-size);font-weight:700;line-height:1.5}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:24px;font-weight:400;flex:none;color:var(--green)}.faq details[open] summary:after{content:'−'}.faq details p{padding-bottom:var(--s4);color:var(--muted);max-width:65ch}.contact{background:var(--green);color:var(--white)}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:var(--s8);align-items:start}.contact-copy{--od-gap:24px}.contact-copy .eyebrow{color:var(--on-green)}.contact-copy h2{max-width:16ch}.contact-copy p{color:var(--on-green)}.contact-direct{margin-top:var(--s4);padding-top:var(--s4);border-top:1px solid #496565;--od-gap:16px}.contact-direct a{overflow-wrap:anywhere;align-self:flex-start}.contact-direct .od-row{--od-gap:16px}.form-panel{background:var(--paper);color:var(--ink);padding:var(--s5);border-radius:var(--radius)}.form-panel>h3{color:var(--green)}.form-panel>p{color:var(--muted);margin-top:var(--s2)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4);margin-top:var(--s4)}.field{--od-gap:8px}.full{grid-column:1/-1}label{font-weight:700;line-height:1.4}label .optional{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;min-width:0;border:1px solid #9ba9a5;background:var(--white);color:var(--ink);border-radius:var(--radius);padding:12px;min-height:48px;line-height:1.5}select{padding-right:var(--s4)}textarea{resize:vertical;min-height:104px}input::placeholder,textarea::placeholder{color:#626868}input[aria-invalid=true],select[aria-invalid=true]{border-color:var(--error)}.error{color:var(--error);font-size:var(--small);line-height:1.5}.help,.privacy-note{font-size:var(--small);color:var(--muted);line-height:1.5}.privacy-note{margin-block:var(--s4)}.form-panel .button{width:100%}.form-panel .after-button{margin-top:var(--s3);color:var(--muted);line-height:1.5}.error-summary{margin-top:var(--s4);border:1px solid var(--error);padding:var(--s3);color:var(--error)}.error-summary ul{padding-left:var(--s4);margin:var(--s2) 0 0}.handoff{padding:var(--s4) 0 0;--od-gap:16px}.handoff a{color:var(--green);font-weight:700}.footer{background:var(--white);padding-block:var(--s6)}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:var(--s5)}.footer-id{--od-gap:4px}.footer-id strong{font-family:var(--display);font-size:var(--h3);font-weight:400;color:var(--green)}.footer-id span{color:var(--muted)}.footer-links{--od-gap:24px}.footer-links a{display:flex;align-items:center;min-height:44px}.footer-bottom{margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--line);color:var(--muted);font-size:var(--small)}.privacy-section{margin-top:var(--s5);border-top:1px solid var(--line);padding-top:var(--s4)}.privacy-section summary{font-weight:700;min-height:44px;color:var(--green)}.privacy-copy{--od-gap:16px;padding-top:var(--s3);max-width:75ch}.privacy-copy h3{font-size:var(--h3);margin-top:var(--s3)}.privacy-copy p{color:var(--muted)}
@media(hover:hover){.button:hover{background:var(--green-hover);transform:translateY(-2px)}.nav a:hover,.text-link:hover,.footer a:hover{color:var(--green-hover);text-decoration:underline}.video-cover:hover{background:var(--soft)}.faq summary:hover{color:var(--green)}.contact-direct a:hover{color:var(--white);text-decoration-thickness:2px}}
@media(min-width:1440px){.hero{padding-block:var(--s7)}.hero-grid{grid-template-columns:1.3fr 1fr}.video-frame{width:336px}}
@media(max-width:1023px){.wrap{width:calc(100% - 64px)}.nav{gap:var(--s3)}.brand{width:160px}.hero-grid{gap:var(--s6)}.hero h1{font-size:clamp(2.75rem,5.6vw,3.75rem)}.section-heading,.audience-grid,.about-grid,.faq-grid,.contact-grid{gap:var(--s6)}.hero-grid{grid-template-columns:1.2fr 1fr}.steps{--od-cols:2}.section{padding-block:var(--s7)}.contact-grid{grid-template-columns:1fr 1.2fr}.form-panel{padding:var(--s4)}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.service-bottom{align-items:flex-start}.strip-item{gap:var(--s2);font-size:var(--small)}}
@media(max-width:767px){.wrap{width:calc(100% - 40px)}.header-inner{min-height:88px;flex-wrap:wrap;gap:0;padding-block:var(--s3)}.brand{width:152px}.menu-toggle{display:flex;align-items:center;justify-content:center}.nav{display:none;width:100%;padding-top:var(--s4);flex-direction:column;align-items:stretch;gap:var(--s2)}.nav.is-open{display:flex}.nav a{padding-inline:var(--s3)}.hero{padding-block:var(--s6)}.hero-grid{grid-template-columns:1fr;gap:var(--s6)}.hero h1{font-size:clamp(2.6rem,9vw,3.6rem);max-width:15ch}.hero-copy{--od-gap:24px}.hero-intro{font-size:var(--body-size)}.hero-action{align-items:stretch}.hero-action .button{align-self:flex-start}.video-frame{width:min(100%,296px)}.hero-media{justify-items:center}.video-caption{max-width:296px}.strip-inner{grid-template-columns:1fr;padding-block:var(--s2)}.strip-item{justify-content:flex-start;padding-block:var(--s3)}.strip-item+.strip-item{border-left:0;border-top:1px solid var(--line)}.section{padding-block:var(--s6)}.section-heading,.audience-grid,.about-grid,.faq-grid,.contact-grid{grid-template-columns:1fr;gap:var(--s5)}.section-heading{margin-bottom:var(--s5)}.section-heading h2{max-width:22ch}.service-grid{--od-cols:1;--od-gap:32px}.service{--od-gap:16px}.service-bottom{flex-direction:column;gap:var(--s3);margin-top:var(--s5)}.audience h2{max-width:22ch}.situations{padding-top:var(--s3)}.steps{--od-cols:1;--od-gap:24px}.step{display:grid;grid-template-columns:40px 1fr;column-gap:var(--s3)}.step-number{grid-row:1/3}.step p{grid-column:2}.portrait{max-width:360px}.about-grid{gap:var(--s6)}.contact-copy h2{max-width:22ch}.contact-direct{margin-top:0}.form-panel{padding:var(--s4)}.form-grid{gap:var(--s3)}.footer-top{align-items:flex-start;flex-direction:column}.footer-links{--od-gap:16px}.eyebrow{font-size:var(--small);letter-spacing:.08em}.button{gap:var(--s2);padding-inline:var(--s3)}.contact .button{white-space:normal}.faq summary{font-size:var(--small)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
