/* First screen, revision 02. The remaining sections retain their original layout. */
@font-face{font-family:Onest;src:url('assets/onest-400.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Onest;src:url('assets/onest-500.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Onest;src:url('assets/onest-600.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Onest;src:url('assets/onest-700.ttf') format('truetype');font-weight:700 900;font-style:normal;font-display:swap}

.site-header,.mobile-menu,.hero{font-family:Onest,Arial,sans-serif}
.site-header{max-width:1320px;height:100px;gap:34px;padding-inline:52px}
.site-header .logo{gap:11px;font-size:35px;font-weight:600;letter-spacing:-1.6px}
.site-header .logo-mark{width:43px;height:44px;font-size:32px;letter-spacing:-3px;border-radius:12px;transform:none;box-shadow:none;padding-right:4px}
.desktop-nav{gap:29px;font-size:14px;line-height:1.5;font-weight:500;margin:auto}
.desktop-nav a{padding-block:12px}
.desktop-nav a:after{height:1.5px;bottom:8px}
.header-cta{min-height:50px;font-size:14px;line-height:1.4;font-weight:500;padding:11px 19px;gap:22px;border-color:#cac8c0}
.header-cta span{font-size:23px;line-height:1}
.header-cta:hover{background:var(--ink);border-color:var(--ink)}

.hero{
  --scene-x:0px;--scene-y:0px;
  isolation:isolate;position:relative;
  grid-template-columns:1.08fr 1fr;grid-template-rows:1fr auto;
  column-gap:4px;align-items:center;
  min-height:672px;padding-top:18px;
}
.hero-ink{position:absolute;inset:0;width:100%;height:100%;z-index:7;pointer-events:none}
.hero-copy{z-index:4;padding-top:0;padding-bottom:8px;min-width:0}
.hero-eyebrow{display:flex;gap:13px;align-items:center;font-size:14px;font-weight:500;line-height:1.6;letter-spacing:0;color:#67665e}
.hero-eyebrow .status-dot{width:7px;height:7px;margin:0 0 0 4px;flex:0 0 7px;box-shadow:0 0 0 5px #ff641f10}
.hero h1{font-size:clamp(78px,9vw,128px);line-height:1.005;letter-spacing:-.045em;font-weight:600;margin:27px 0 33px}
.hero-title-line{display:block;position:relative;animation:hero-type-in .85s both cubic-bezier(.22,1,.36,1)}
.hero-title-line:nth-child(2){animation-delay:.1s}
.hero-word{color:#f15d1f;letter-spacing:inherit;width:max-content;white-space:nowrap}
.word-period{letter-spacing:inherit;color:inherit}
.hero-word svg{left:3px;bottom:-15px;width:98%;height:24px;stroke-width:2.8;stroke-dasharray:620;stroke-dashoffset:620;animation:underline-in 1.05s .55s var(--ease) forwards}
.hero-description{font-size:21px;line-height:1.55;letter-spacing:-.025em;font-weight:400;color:#64635d;margin:0;animation:hero-type-in .85s .18s both var(--ease)}
.hero-description strong{font-weight:500;color:var(--ink)}
.hero-actions{gap:29px;margin-top:31px;flex-direction:row;align-items:center;animation:hero-type-in .85s .26s both var(--ease)}
.hero-actions .btn{min-height:64px;padding:10px 10px 10px 25px;gap:27px;font-size:16px;line-height:1.4;font-weight:500;letter-spacing:-.02em;border-radius:38px;background:#24241f;box-shadow:none;white-space:nowrap;flex-shrink:0}
.hero-actions .btn:hover{background:#383830;box-shadow:0 9px 24px #24241f12}
.hero-actions .btn-icon{width:44px;height:44px;flex-shrink:0;background:var(--orange)}
.hero-actions .btn-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hero-actions .btn:hover .btn-icon{transform:rotate(0);background:#ff8148}
.hero-actions .btn:hover .btn-icon svg{animation:hero-arrow-hop .45s var(--ease)}
.hero-work-link{display:inline-flex;gap:11px;align-items:center;font-size:15px;font-weight:500;line-height:1.4;padding-block:14px;white-space:nowrap;position:relative}
.hero-work-link:after{content:'';position:absolute;height:1px;background:currentColor;left:0;right:31px;bottom:10px;transform:scaleX(0);transform-origin:left;transition:transform .3s}
.hero-work-link:hover:after{transform:scaleX(1)}
.hero-work-link svg{height:21px;width:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s}
.hero-work-link:hover svg{transform:translateY(3px)}
.hero-note{display:block;margin-top:25px;font-size:14px;line-height:1.65;letter-spacing:-.015em;font-weight:400;color:#77766f;animation:hero-type-in .85s .34s both var(--ease)}
.note-break{display:none}

/* One simple orange backdrop gives the white feathers a clear silhouette. */
.hero-art{position:relative;z-index:2;min-width:0;width:100%;height:auto;aspect-ratio:1/1.04;margin:0;align-self:center}
.orange-blob{
  left:11%;top:10%;width:83%;height:78%;border-radius:45% 45% 38% 38%;
  background:#ff762f;background-image:linear-gradient(150deg,#ff9c5e 0%,#ff782d 43%,#ff621e 100%);
  transform:translate(var(--scene-x),var(--scene-y)) rotate(-9deg);
  animation:none;transition:transform 1s cubic-bezier(.2,.7,.3,1);overflow:hidden;
}
.scene-shine{position:absolute;inset:-15% 38% 10% -30%;background:#ffc89c22;border-radius:50%;transform:rotate(27deg)}
.art-orbit{left:5.5%;top:6%;width:93%;height:87%;border:1px solid #eddbc8;border-radius:48%;transform:rotate(11deg);opacity:.8}
.goose-shadow{position:absolute;left:29%;bottom:3%;width:53%;height:5%;background:radial-gradient(ellipse,#78432227,transparent 68%);filter:blur(5px);z-index:1}
.goose-stage{width:112%;max-width:none;left:-6%;top:-3%;margin:0;aspect-ratio:1;z-index:3;filter:drop-shadow(0 15px 13px #6a330d0c);transition:none}
.goose-stage:focus-visible{outline:2px dashed var(--orange-dark);outline-offset:-65px;border-radius:45%}
.goose-stage img,.goose-stage canvas{width:100%;height:100%}
.goose-speech{
  top:8%;left:-1%;z-index:5;padding:15px 19px;
  border:1px solid #e7e3d9;border-radius:17px 17px 4px 17px;
  background:#fffefa;box-shadow:0 12px 26px #5d351007;
  font-size:15px;line-height:1.55;letter-spacing:-.025em;font-weight:400;
  transform:rotate(-4deg);animation:hero-speech-float 6s ease-in-out infinite;
}
.goose-speech strong{font-weight:500}
.hero-flower{position:absolute;z-index:4;right:0;top:1%;width:69px;height:69px;fill:var(--orange);transform:rotate(12deg);animation:hero-flower-turn 24s linear infinite;pointer-events:none}
.goose-greeting{position:absolute;z-index:6;bottom:4%;right:0;display:flex;align-items:center;gap:9px;padding:11px 14px;transform:rotate(-5deg);font-size:14px;line-height:1.4;font-weight:500;border-radius:30px;background:var(--paper);transition:background .25s,transform .3s}
.goose-greeting:hover{background:#fff1e5;transform:rotate(0) translateY(-2px)}
.goose-greeting svg{width:27px;height:27px;fill:none;stroke:var(--orange-dark);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transform-origin:50% 80%}
.goose-greeting:hover svg{animation:hello-hand .6s ease-in-out 2}
.goose-greeting span{border-bottom:1px solid #d3d0c5;padding-bottom:2px}

.hero-bottom{z-index:4;grid-column:1/-1;align-self:end;min-height:86px;margin-top:12px;border-top:1px solid #dfdfd5;letter-spacing:0;font-size:14px;color:#67675e;font-weight:400;gap:20px}
.hero-specialties{display:flex;align-items:center;gap:24px;font-size:15px;line-height:1.4;letter-spacing:-.02em;color:#5f6058}
.hero-specialties i{color:var(--orange);font-size:17px;font-style:normal;line-height:1}
.hero-bottom .hero-scroll{font-size:13px;gap:20px;letter-spacing:0;font-weight:400;line-height:1.5}
.hero-bottom .hero-scroll span{font-size:inherit;color:inherit}
.hero-scroll svg{width:22px;height:22px;fill:none;stroke:var(--ink);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s}
.hero-scroll:hover svg{transform:translateY(4px)}

@keyframes hero-type-in{from{opacity:0;transform:translateY(17px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-speech-float{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-5px) rotate(-2.5deg)}}
@keyframes hero-flower-turn{to{transform:rotate(372deg)}}
@keyframes hero-arrow-hop{0%{transform:translate(0)}45%{transform:translate(3px,-3px)}100%{transform:translate(0)}}
@keyframes hello-hand{0%,100%{transform:rotate(0)}30%{transform:rotate(16deg)}70%{transform:rotate(-8deg)}}

@media(min-width:1600px){
  .hero{min-height:725px;padding-top:25px}
  .hero h1{font-size:132px}
  .hero-art{height:auto;aspect-ratio:1/1.06}
  .goose-stage{width:116%;left:-8%;top:-4%}
  .orange-blob{width:85%;height:79%}
}
@media(min-width:981px) and (max-height:820px){
  .site-header{height:88px}
  .hero{min-height:0;padding-top:12px}
  .hero h1{font-size:clamp(82px,8.2vw,114px);margin-top:22px;margin-bottom:27px}
  .hero-description{font-size:20px;line-height:1.5}
  .hero-actions{margin-top:26px}
  .hero-art{max-width:520px;justify-self:end}
  .hero-bottom{min-height:75px;margin-top:10px}
}
@media(max-width:1150px){
  .site-header{padding-inline:36px;height:92px;gap:22px}
  .site-header .logo{font-size:32px}
  .desktop-nav{gap:21px;font-size:13px}
  .header-cta{font-size:13px;gap:16px;padding-inline:16px}
  .hero{padding-top:25px;min-height:610px;grid-template-columns:1.08fr 1fr;column-gap:0}
  .hero h1{font-size:9vw;margin-top:25px;margin-bottom:32px}
  .hero-eyebrow{font-size:13px;gap:11px}
  .hero-description{font-size:19px}
  .hero-actions{gap:23px;margin-top:27px}
  .hero-actions .btn{min-height:60px;font-size:15px;gap:18px;padding-left:22px}
  .hero-actions .btn-icon{width:40px;height:40px}
  .hero-work-link{font-size:14px;gap:8px}
  .hero-note{font-size:13px;margin-top:22px}
  .hero-art{height:auto;margin:0;aspect-ratio:1/1.11}
  .goose-stage{width:117%;left:-9%;top:1%}
  .orange-blob{width:86%;height:76%;left:9%;top:13%}
  .art-orbit{width:96%;height:87%;left:3%;top:8%}
  .goose-speech{left:-1%;top:8%;font-size:13px;padding:13px 16px}
  .hero-flower{width:57px;height:57px;right:-1%;top:3%}
  .goose-greeting{font-size:13px;bottom:1%;right:-5px;padding:9px 12px}
  .goose-shadow{bottom:1%}
  .hero-bottom{min-height:80px;margin-top:23px}
  .hero-specialties{font-size:14px;gap:20px}
  .hero-bottom .hero-scroll{font-size:12px;gap:14px}
}
@media(max-width:980px){
  .desktop-nav{display:none}
  .site-header .header-cta{display:flex;margin-left:auto}
  .menu-toggle{display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;width:46px;height:46px;margin-left:0;border:1px solid var(--line);border-radius:50%;z-index:32}
  .menu-toggle span{width:19px;height:1.5px;background:var(--ink);transition:transform .3s}
  .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.75px) rotate(45deg)}
  .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}
  .mobile-menu{display:flex;position:absolute;top:82px;left:24px;right:24px;z-index:25;border:1px solid var(--line);background:var(--paper);padding:28px;border-radius:20px;box-shadow:0 15px 25px #22221f10;flex-direction:column;gap:18px}
  .mobile-menu a{font-size:23px;line-height:1.5;font-weight:500;letter-spacing:-.03em}
  .mobile-menu button{background:var(--orange);color:white;border-radius:30px;padding:15px;font-size:16px;font-weight:500;margin-top:4px}
  .hero{min-height:590px;padding-top:28px}
  .hero h1{font-size:9vw;margin-top:27px}
  .hero-description{font-size:18px}
  .hero-actions{align-items:flex-start;flex-direction:column;gap:3px;margin-top:25px}
  .hero-actions .btn{min-height:60px;font-size:15px;gap:24px}
  .hero-work-link{font-size:14px}
  .hero-note{font-size:13px;margin-top:11px;max-width:300px}
  .hero-eyebrow{font-size:12px;white-space:normal;max-width:320px}
  .hero-art{aspect-ratio:1/1.22}
  .goose-stage{width:125%;left:-13%;top:5%}
  .orange-blob{width:90%;height:76%;top:14%;left:7%}
  .art-orbit{top:10%;height:85%;width:97%;left:3%}
  .goose-speech{top:13%;font-size:12px;left:-8%;padding:11px 14px}
  .hero-flower{top:3%;right:0;width:53px;height:53px}
  .goose-greeting{bottom:0;right:0;font-size:12px}
  .goose-shadow{bottom:0}
  .hero-bottom{margin-top:28px}
}
@media(max-width:800px){
  .hero{grid-template-columns:1fr;padding-top:28px;min-height:0}
  .hero-copy{padding:0;max-width:610px}
  .hero h1{font-size:clamp(75px,13.8vw,104px);line-height:1.01;margin-top:24px;margin-bottom:32px}
  .hero-eyebrow{font-size:14px;max-width:none;gap:13px}
  .hero-description{font-size:21px}
  .hero-actions{flex-direction:row;align-items:center;gap:30px;margin-top:29px}
  .hero-actions .btn{font-size:16px;min-height:64px;padding-left:25px}
  .hero-work-link{font-size:15px}
  .hero-note{display:block;font-size:14px;max-width:none;margin-top:21px}
  .hero-art{width:100%;max-width:490px;aspect-ratio:1/1.02;margin:18px auto 0;justify-self:center;height:auto}
  .goose-stage{width:111%;left:-5.5%;top:-3%}
  .orange-blob{width:81%;height:76%;left:11%;top:12%}
  .art-orbit{width:91%;height:86%;left:5%;top:7%}
  .goose-speech{top:10%;left:0;font-size:14px;padding:14px 17px}
  .hero-flower{right:2%;top:3%;width:60px;height:60px}
  .goose-greeting{right:2%;bottom:2%;font-size:14px;padding:11px 14px}
  .goose-shadow{bottom:2%}
  .hero-bottom{margin-top:22px;min-height:82px}
  .hero-specialties{font-size:14px;gap:18px}
  .hero-bottom .hero-scroll{font-size:12px;gap:12px}
}
@media(max-width:540px){
  .site-header{height:88px;padding-inline:22px;gap:14px}
  .site-header .logo{font-size:33px;gap:10px}
  .site-header .logo-mark{width:39px;height:40px;font-size:30px;border-radius:11px}
  .site-header .header-cta{display:none}
  .menu-toggle{margin-left:auto;width:44px;height:44px}
  .mobile-menu{top:77px;left:14px;right:14px;padding:25px}
  .hero{padding-top:24px}
  .hero-eyebrow{font-size:12px;line-height:1.6;gap:11px;letter-spacing:-.015em}
  .hero h1{font-size:clamp(60px,17.9vw,96px);line-height:1.02;letter-spacing:-.05em;margin-top:23px;margin-bottom:29px}
  .hero-word svg{height:17px;bottom:-12px;stroke-width:3}
  .hero-description{font-size:18px;line-height:1.6;letter-spacing:-.025em}
  .hero-actions{gap:14px;margin-top:25px;flex-wrap:wrap}
  .hero-actions .btn{font-size:14px;min-height:58px;padding:9px 9px 9px 20px;gap:18px}
  .hero-actions .btn-icon{height:39px;width:39px}
  .hero-actions .btn-icon svg{width:21px;height:21px}
  .hero-work-link{font-size:13px;gap:5px;line-height:1.5}
  .hero-work-link svg{width:17px;height:17px}
  .hero-work-link:after{right:22px}
  .hero-note{font-size:12px;line-height:1.7;margin-top:19px}
  .hero-art{max-width:410px;margin-top:22px;aspect-ratio:1/.99}
  .orange-blob{left:12%;top:10%;width:81%;height:78%}
  .art-orbit{left:5%;top:5%;width:92%;height:90%}
  .goose-stage{width:116%;left:-8%;top:-5%}
  .goose-speech{font-size:12px;line-height:1.5;left:-1%;top:6%;padding:12px 14px;border-radius:14px 14px 3px 14px}
  .hero-flower{width:49px;height:49px;top:0;right:0}
  .goose-greeting{right:-5px;bottom:-2%;font-size:12px;padding:9px 11px;gap:6px}
  .goose-greeting svg{width:24px;height:24px}
  .goose-shadow{bottom:-1%}
  .hero-bottom{margin-top:28px;min-height:75px;gap:12px}
  .hero-specialties{font-size:12px;gap:13px}
  .hero-specialties i{font-size:13px}
  .hero-scroll span{display:none}
  .hero-bottom .hero-scroll{padding:12px 0 12px 12px}
  .hero-scroll svg{width:24px;height:24px}
}
@media(max-width:370px){
  .site-header{padding-inline:18px}
  .hero h1{font-size:17.4vw}
  .hero-eyebrow{font-size:11px;gap:10px}
  .hero-description{font-size:16px}
  .hero-actions{gap:15px}
  .hero-actions .btn{font-size:13px;padding-left:17px;gap:13px;min-height:55px}
  .hero-actions .btn-icon{width:36px;height:36px}
  .hero-work-link{font-size:12px;gap:5px}
  .hero-note{font-size:11px}
  .goose-speech{font-size:11px;padding:10px 12px}
  .goose-greeting{font-size:11px;right:-6px;bottom:-4%}
  .hero-specialties{font-size:11px;gap:10px}
}
@media(hover:none),(pointer:coarse){.hero-ink{display:none}}
.reduce-motion .hero-ink{display:none}
.reduce-motion .orange-blob{transform:rotate(-9deg)}
.reduce-motion .hero-title-line,.reduce-motion .hero-description,.reduce-motion .hero-actions,.reduce-motion .hero-note{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  .hero-ink{display:none}
  .orange-blob{transform:rotate(-9deg)}
  .hero-title-line,.hero-description,.hero-actions,.hero-note{opacity:1;transform:none}
}
