@font-face{
      font-family:"DM Sans";
      src:url("../fonts/dm-sans.woff2") format("woff2");
      font-style:normal;
      font-weight:100 1000;
      font-display:swap;
    }
    :root{
      --cream:#FBF1DB;
      --pink:#FADBDB;
      --orange:#F44210;
      --orange-dark:#CC3508;
      --orange-text:#B82F08;
      --green:#93A33F;
      --green-text:#4F5E10;
      --green-light:#C6D66F;
      --green-dark:#66751D;
      --blue:#D2DEF2;
      --burgundy:#7F0A32;
      --line:2px solid var(--burgundy);
      --font:"DM Sans",Arial,sans-serif;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--cream);color:var(--burgundy);font-family:var(--font);font-size:17px;line-height:1.5;overflow-x:hidden}body.modal-open{overflow:hidden}
    img{display:block;max-width:100%;height:auto}
    a{color:inherit;text-decoration:none}
    button,a{-webkit-tap-highlight-color:transparent}
    .skip{position:absolute;left:-1000px;top:15px;background:var(--burgundy);color:var(--cream);padding:12px 18px;z-index:100;border-radius:100px}.skip:focus{left:15px}
    .announcement{height:34px;background:var(--orange-dark);color:var(--cream);display:flex;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:800;border-bottom:var(--line)}
    nav{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,78px);position:sticky;top:0;z-index:30;background:rgba(251,241,219,.94);backdrop-filter:blur(16px);border-bottom:var(--line)}
    .brand-small{width:112px;height:66px;object-fit:contain}
    .nav-right{display:flex;align-items:center;gap:30px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
    .nav-right a:not(.pill):hover{color:var(--orange-text)}
    .pill{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 20px;background:var(--burgundy);color:var(--cream);border:2px solid var(--burgundy);border-radius:100px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;transition:.18s ease}
    .pill::after,.card-link::after,.footer-social a::after{content:"";display:inline-block;flex:0 0 auto;width:17px;height:17px;background:currentColor;-webkit-mask:url("../images/arrow-up-right.svg") center/contain no-repeat;mask:url("../images/arrow-up-right.svg") center/contain no-repeat}.footer-social a::after{margin-left:6px;vertical-align:-3px}.pill:hover{background:var(--orange-dark);border-color:var(--orange-dark)}
    .pill.light{background:var(--cream);color:var(--burgundy)}.pill.light:hover{background:var(--blue);border-color:var(--burgundy)}
    .hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr);min-height:790px;border-bottom:var(--line)}
    .hero-copy{padding:clamp(68px,8vw,118px) clamp(30px,6vw,96px);display:flex;flex-direction:column;justify-content:space-between;border-right:var(--line);position:relative;overflow:hidden}
    .hero-copy::after{content:"";position:absolute;width:430px;height:95px;background:var(--pink);border:var(--line);border-radius:50%;right:-90px;bottom:-54px;transform:rotate(-6deg)}
    .kicker{display:flex;align-items:center;gap:13px;text-transform:uppercase;font-size:12px;line-height:1.2;font-weight:800;letter-spacing:.17em;margin-bottom:34px}.kicker::before{content:"";width:42px;height:2px;background:currentColor}
    h1,h2,h3,p{margin-top:0}
    h1{font-size:clamp(62px,7.7vw,126px);line-height:.84;letter-spacing:-.075em;margin:0 0 38px;font-weight:900;max-width:880px;text-wrap:balance}
    h1 span{color:var(--orange)}
    .hero-text{font-size:clamp(19px,1.8vw,25px);line-height:1.44;max-width:640px;font-weight:500;margin-bottom:34px}
    .hero-meta{display:flex;align-items:center;gap:20px;margin-top:30px;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;position:relative;z-index:2}.hero-meta span{display:flex;align-items:center;gap:9px}.hero-meta span::before{content:"";width:8px;height:8px;background:var(--green);border-radius:50%;border:1px solid var(--burgundy)}
    .hero-panel{background:var(--pink);position:relative;overflow:hidden;display:grid;place-items:center;padding:70px}
    .hero-panel::before{content:"SIT • STAY • STRETCH •";position:absolute;top:25px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:11px;font-weight:800;letter-spacing:.18em}
    .hero-panel::after{content:"";position:absolute;width:560px;height:560px;background:var(--cream);border:var(--line);border-radius:47% 53% 39% 61% / 56% 39% 61% 44%;transform:rotate(8deg)}
    .hero-paw{position:relative;z-index:2;width:min(34vw,440px);height:auto;aspect-ratio:686/720;filter:drop-shadow(0 12px 0 rgba(127,10,50,.06));animation:drift 5s ease-in-out infinite}
    @keyframes drift{50%{transform:translateY(-10px) rotate(1deg)}}

    .identity{display:grid;grid-template-columns:minmax(360px,.85fr) minmax(0,1.15fr);border-bottom:var(--line)}
    .identity-logo{min-height:620px;background:var(--blue);border-right:var(--line);display:grid;place-items:center;padding:70px;position:relative;overflow:hidden}
    .identity-logo::before{content:"";position:absolute;left:-70px;bottom:-90px;width:270px;height:270px;border:40px solid var(--pink);border-radius:50%}
    .logo-large{width:min(100%,510px);position:relative;z-index:2}
    .identity-copy{padding:clamp(70px,8vw,126px) clamp(34px,7vw,112px);display:flex;flex-direction:column;justify-content:center}
    .section-no{font-size:11px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:var(--green-text);margin-bottom:34px}
    h2{font-size:clamp(46px,5.8vw,86px);font-weight:900;line-height:.94;letter-spacing:-.06em;margin-bottom:32px;text-wrap:balance}
    .lede{font-size:clamp(20px,2vw,27px);line-height:1.45;max-width:780px;font-weight:500}
    .editorial-note{display:grid;grid-template-columns:1fr auto;align-items:end;gap:30px;margin-top:50px;padding-top:24px;border-top:var(--line);font-weight:700}.editorial-note b{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:var(--orange-text)}
    .method{background:var(--burgundy);color:var(--cream);padding:clamp(80px,9vw,136px) clamp(26px,6vw,94px);border-bottom:var(--line)}
    .method-top{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end;margin-bottom:70px}.method-top h2{margin:0;color:var(--pink)}.method-top .lede{justify-self:end;max-width:570px;margin:0}
    .method .section-no{color:var(--green-light)}
    .method-grid{border-top:2px solid rgba(251,241,219,.45)}
    .method-row{display:grid;grid-template-columns:110px minmax(220px,.75fr) minmax(0,1.25fr);gap:34px;align-items:center;padding:34px 0;border-bottom:2px solid rgba(251,241,219,.45);transition:.2s ease}
    .method-row:hover{padding-left:16px;background:rgba(251,241,219,.04)}
    .method-row .number{font-size:13px;font-weight:800;letter-spacing:.12em;color:var(--pink)}
    .method-row h3{font-size:clamp(32px,4vw,56px);line-height:1;font-weight:900;letter-spacing:-.05em;margin:0;color:var(--cream)}
    .method-row p{margin:0;font-size:17px;max-width:620px;color:rgba(251,241,219,.82)}
    .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
    .gallery{--visible:6;position:relative;overflow:hidden;background:var(--burgundy);border-bottom:var(--line)}
    .gallery-viewport{width:100%;overflow-x:auto;scrollbar-width:none;touch-action:pan-y}.gallery-viewport::-webkit-scrollbar{display:none}.js .gallery-viewport{overflow:hidden}
    .gallery-track{display:flex;width:100%;transition:transform .6s cubic-bezier(.22,.61,.36,1);will-change:transform}html:not(.js) .gallery-track{display:none}.gallery-noscript{display:flex;width:100%;overflow-x:auto}.gallery-noscript-item{display:block;flex:0 0 calc(100% / var(--visible));aspect-ratio:3/4;overflow:hidden}
    .gallery-item{appearance:none;display:block;flex:0 0 calc(100% / var(--visible));aspect-ratio:3/4;padding:0;border:0;border-right:2px solid var(--burgundy);background:var(--burgundy);overflow:hidden;cursor:zoom-in}.gallery-item:focus-visible{outline:4px solid var(--cream);outline-offset:-6px;position:relative;z-index:3}
    .gallery-photo,.gallery-noscript-photo{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .35s ease}.gallery-item:hover .gallery-photo{transform:scale(1.025)}
    .gallery-control{color:var(--burgundy);display:none;position:absolute;z-index:5;top:50%;width:50px;height:50px;padding:0;border:2px solid var(--burgundy);border-radius:50%;background:var(--cream);place-items:center;cursor:pointer;transform:translateY(-50%)}.js .gallery-control{display:grid}.gallery-control:hover{background:var(--pink)}.gallery-control-prev{left:18px}.gallery-control-next{right:18px}.gallery-control::before,.gallery-modal-control::before{content:"";display:block;width:23px;height:23px;background:currentColor;-webkit-mask:url("../images/arrow-up-right.svg") center/contain no-repeat;mask:url("../images/arrow-up-right.svg") center/contain no-repeat}.gallery-control img,.gallery-modal-control img{display:none}.gallery-control-prev::before,.gallery-modal-prev::before{transform:rotate(-135deg)}.gallery-control-next::before,.gallery-modal-next::before{transform:rotate(45deg)}
    .gallery-modal{width:min(94vw,1080px);max-width:none;padding:20px;border:2px solid var(--cream);border-radius:22px;background:var(--burgundy);color:var(--cream);overflow:visible}.gallery-modal::backdrop{background:rgba(18,3,9,.82);backdrop-filter:blur(5px)}.modal-close{color:var(--cream);position:absolute;z-index:3;right:14px;top:14px;width:48px;height:48px;padding:0;border:2px solid var(--cream);border-radius:50%;background:transparent;display:grid;place-items:center;cursor:pointer}.modal-close::before,.modal-close::after{content:"";position:absolute;top:50%;left:50%;width:30px;height:2.4px;border-radius:2px;background:currentColor}.modal-close::before{transform:translate(-50%,-50%) rotate(45deg)}.modal-close::after{transform:translate(-50%,-50%) rotate(-45deg)}.modal-close:hover,.modal-close:focus-visible{background:rgba(251,241,219,.18)}.gallery-modal-stage{display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;gap:16px}.gallery-modal-image{display:block;width:auto;max-width:100%;height:auto;max-height:76vh;margin:auto;object-fit:contain}.gallery-modal-control{color:var(--cream);width:48px;height:48px;padding:0;border:2px solid var(--cream);border-radius:50%;background:transparent;display:grid;place-items:center;cursor:pointer}.gallery-modal-control:hover,.gallery-modal-control:focus-visible{background:rgba(251,241,219,.18)}.gallery-modal-caption{margin:16px 64px 2px;text-align:center;font-size:14px;font-weight:800;letter-spacing:.04em}.gallery-modal-caption a{text-decoration:underline;text-underline-offset:4px}.gallery-modal-caption a:hover{color:var(--pink)}
    .services{padding:clamp(80px,9vw,138px) clamp(26px,6vw,94px);background:var(--cream);border-bottom:var(--line)}
    .services-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:64px}.services-head h2{max-width:820px;margin:0}.services-head .small{max-width:360px;font-size:15px;font-weight:600;margin:0}
    .cards{display:grid;grid-template-columns:repeat(3,1fr);border:var(--line)}
    .card{min-height:510px;padding:38px 34px;display:flex;flex-direction:column;position:relative;overflow:hidden;border-right:var(--line);transition:.25s ease}.card:last-child{border-right:0}.card:nth-child(2){background:var(--pink)}.card:nth-child(3){background:var(--orange-dark);color:var(--cream)}
    .card:hover{padding-top:30px}.card-index{font-size:11px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;margin-bottom:100px}.card h3{font-size:clamp(35px,3.8vw,52px);line-height:.98;letter-spacing:-.055em;margin:0 0 22px;font-weight:900;position:relative;z-index:1}.card p{font-size:16px;max-width:430px}.card-link{margin-top:auto;padding-top:30px;border-top:2px solid currentColor;font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:900;display:flex;justify-content:space-between}.card-shape{position:absolute;width:190px;height:150px;right:-30px;top:48px;object-fit:contain;pointer-events:none;z-index:0}
    .contact-modal{width:min(94vw,620px);max-width:none;max-height:94vh;max-height:94svh;overflow-y:auto;padding:26px clamp(22px,4vw,38px) 22px;border:2px solid var(--cream);border-radius:22px;background:var(--burgundy);color:var(--cream)}.contact-modal::backdrop{background:rgba(18,3,9,.82);backdrop-filter:blur(5px)}.contact-modal .section-no{color:var(--pink);margin-bottom:12px}
    .contact-modal-title{font-size:clamp(28px,3.6vw,38px);line-height:1;letter-spacing:-.045em;margin:0 0 10px}.contact-modal-lede{margin:0 0 16px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.14em;color:var(--green-light)}
    .contact-form{display:grid;gap:12px}.contact-field label{display:block;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.14em;margin-bottom:5px}
    .contact-field input,.contact-field textarea{width:100%;padding:11px 13px;border:2px solid var(--cream);border-radius:12px;background:rgba(251,241,219,.08);color:var(--cream);font:inherit;font-size:15px}
    .contact-field input::placeholder,.contact-field textarea::placeholder{color:rgba(251,241,219,.55)}.contact-field textarea{min-height:86px;resize:vertical}
    .contact-field input:focus-visible,.contact-field textarea:focus-visible{outline:3px solid var(--pink);outline-offset:2px}.contact-field input[aria-invalid="true"],.contact-field textarea[aria-invalid="true"]{border-color:var(--pink)}
    .contact-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
    .contact-submit{width:100%;margin-top:4px}.contact-submit[disabled]{opacity:.6;cursor:progress}
    .contact-status{margin:0;min-height:20px;font-size:14px;font-weight:700;line-height:1.5}.contact-status[data-state="error"]{color:var(--pink)}.contact-status[data-state="ok"]{color:var(--green-light)}
    .grecaptcha-badge{visibility:hidden}
    .contact-recaptcha-note{margin:0;font-size:11px;line-height:1.6;color:rgba(251,241,219,.72)}.contact-recaptcha-note a{color:inherit;text-decoration:underline;text-underline-offset:3px}.contact-recaptcha-note a:hover{color:var(--pink)}
    .manifesto{display:grid;grid-template-columns:.72fr 1.28fr;min-height:650px;border-bottom:var(--line)}
    .manifesto-side{background:var(--green);border-right:var(--line);display:grid;place-items:center;padding:60px}.manifesto-side .hero-paw{width:min(100%,360px)}
    .manifesto-copy{background:var(--blue);padding:clamp(76px,8vw,128px) clamp(34px,7vw,120px);display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.manifesto-copy::after{content:"";position:absolute;width:220px;height:220px;border:35px solid rgba(127,10,50,.08);border-radius:50%;right:-100px;bottom:-90px}
    .manifesto-copy h2{font-size:clamp(64px,8.5vw,132px);line-height:.84;margin-bottom:38px}.manifesto-copy h2 span{color:var(--orange)}
    .manifesto-copy p{font-size:20px;font-weight:600;max-width:590px}
    .cta{background:var(--pink);padding:clamp(86px,10vw,150px) clamp(26px,7vw,112px);text-align:center;position:relative;overflow:hidden}.cta::before,.cta::after{content:"✦";position:absolute;color:var(--orange);font-size:70px}.cta::before{left:8%;top:20%}.cta::after{right:9%;bottom:15%;color:var(--green);font-size:50px}
    .cta-inner{max-width:1080px;margin:auto;position:relative;z-index:2}.cta h2{font-size:clamp(62px,9vw,140px);line-height:.85;margin-bottom:35px}.cta p{font-size:21px;max-width:620px;margin:0 auto 34px}.cta .pill{padding:17px 26px}
    footer{background:var(--burgundy);color:var(--cream);padding:46px clamp(24px,5vw,80px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:35px}.footer-logo{width:126px}.footer-tag{text-align:center;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.footer-credit{display:flex;justify-content:center;flex-wrap:wrap;gap:0 .45em;margin-top:10px;font-size:10px;letter-spacing:.08em}.footer-credit a:hover,.footer-social a:hover{color:var(--pink)}.footer-social{text-align:right;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
    .js .reveal{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}.js .reveal.on{opacity:1;transform:none}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-paw{animation:none}.js .reveal{opacity:1;transform:none;transition:none}.gallery-track,.gallery-photo{transition:none}}
    @media(max-width:980px){
      .gallery{--visible:2;height:100vh;height:100svh;display:flex;align-items:center}.gallery-viewport{width:100%}
      .hero{grid-template-columns:1fr;min-height:auto}.hero-copy{min-height:690px;border-right:0;border-bottom:var(--line)}.hero-panel{min-height:590px}.hero-paw{width:390px}
      .identity{grid-template-columns:1fr}.identity-logo{min-height:500px;border-right:0;border-bottom:var(--line)}
      .method-top{grid-template-columns:1fr}.method-top .lede{justify-self:start}.method-row{grid-template-columns:70px .8fr 1.2fr}
      .cards{grid-template-columns:1fr 1fr}.card:nth-child(2){border-right:0}.card:nth-child(3){grid-column:1/-1;border-right:0;border-top:var(--line);min-height:400px}
      .manifesto{grid-template-columns:1fr}.manifesto-side{min-height:500px;border-right:0;border-bottom:var(--line)}
    }
    @media(max-width:650px){
      .gallery{--visible:1}.gallery-control{width:44px;height:44px}.gallery-control-prev{left:12px}.gallery-control-next{right:12px}.gallery-modal{width:calc(100vw - 20px);padding:54px 10px 14px}.gallery-modal-stage{grid-template-columns:42px minmax(0,1fr) 42px;gap:4px}.gallery-modal-control{width:40px;height:40px}.gallery-modal-image{max-height:70vh}.gallery-modal-caption{margin:14px 40px 0;font-size:12px}
      body{font-size:16px}.announcement{font-size:9px;letter-spacing:.11em;height:30px}nav{height:74px;padding:0 18px}.brand-small{width:90px}.nav-right{gap:8px}.nav-right>a:not(.pill){display:none}.pill{padding:10px 13px;font-size:10px}
      .hero-copy{padding:58px 22px 66px;min-height:610px}.kicker{margin-bottom:27px}.hero-copy h1{font-size:60px;line-height:.86;margin-bottom:28px}.hero-text{font-size:18px}.hero-meta{display:block;line-height:2.2;margin-top:20px}
      .hero-panel{min-height:430px;padding:45px 28px}.hero-panel::after{width:340px;height:340px}.hero-paw{width:270px}
      .identity-logo{min-height:390px;padding:50px 28px}.identity-copy{padding:72px 22px}.identity-copy h2{font-size:48px}.lede{font-size:19px}.editorial-note{grid-template-columns:1fr;gap:10px}
      .method{padding:76px 22px}.method-top{margin-bottom:45px}.method-top h2{font-size:50px}.method-row{grid-template-columns:42px 1fr;gap:15px;padding:27px 0}.method-row p{grid-column:2}.method-row h3{font-size:37px}
      .services{padding:76px 22px}.services-head{display:block;margin-bottom:42px}.services-head h2{font-size:49px;margin-bottom:24px}.cards{grid-template-columns:1fr}.card,.card:nth-child(2),.card:nth-child(3){grid-column:auto;border-right:0;border-bottom:var(--line);border-top:0;min-height:410px;padding:30px 25px}.card:last-child{border-bottom:0}.card-index{margin-bottom:70px}.card h3{font-size:40px}
      .manifesto-side{min-height:390px;padding:45px}.manifesto-copy{padding:78px 22px}.manifesto-copy h2{font-size:67px}.manifesto-copy p{font-size:18px}
      .cta{padding:90px 22px}.cta h2{font-size:68px}.cta p{font-size:18px}.cta::before{left:2%;top:9%;font-size:40px}.cta::after{right:4%;bottom:8%;font-size:34px}
      footer{grid-template-columns:1fr;justify-items:center;text-align:center}.footer-social{text-align:center}
    }
