/* Chatter Duck — field, mechanism, and a clear path to the water. */
:root {
  --paper:#f1efe5;
  --white:#faf8ef;
  --deep:#172b23;
  --ink:#21362b;
  --forest:#365044;
  --orange:#d9af70;
  --brass:#ad8652;
  --muted:#667061;
  --line:#cdd0c1;
  --gutter:clamp(24px,5.4vw,100px);
}
html {scroll-behavior:smooth;scroll-padding-top:32px}
body {font:16px/1.65 var(--body);background:var(--paper);color:var(--ink)}
p {text-wrap:pretty}
h1,h2,.interior h1,.interior h2 {font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:-.018em;line-height:.93;text-wrap:balance}
h1,.interior h1 {font-size:clamp(64px,8.3vw,124px)}
h2,.interior h2 {font-size:clamp(48px,6.2vw,90px)}
h3,h4 {letter-spacing:-.025em}
.section-shell {padding:100px var(--gutter)}
.eyebrow {font:600 10px/1.5 var(--mono);letter-spacing:.12em;margin-bottom:23px;text-transform:uppercase;color:var(--muted)}
.button {min-height:56px;border:0;border-radius:0;padding:17px 24px;font-size:13px;font-weight:700;gap:32px}
.button.orange {background:var(--orange);color:var(--deep)}
.button.orange:hover {background:#e7c492}
.button.dark {background:var(--deep);color:var(--paper)}
.text-link {font-size:12px;line-height:1.4;gap:25px;border:0;border-bottom:1px solid currentColor;background:transparent;padding:9px 0;color:inherit}
.text-link:hover {color:var(--brass);border-color:currentColor}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,video:focus-visible {outline:3px solid var(--brass);outline-offset:5px}

/* Navigation */
.site-header,.interior .site-header {position:relative;min-height:104px;padding:22px var(--gutter);gap:36px;background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line)}
.wordmark {font:800 23px/.78 var(--display);letter-spacing:.035em}
.wordmark span {font-size:39px;letter-spacing:.093em;margin-top:5px}
.site-header nav {gap:30px;font-size:12px}
.site-header nav a {padding:12px 0}
.site-header nav a:hover,.site-header nav a[aria-current=page] {color:var(--brass)}
.site-header .header-cta {background:transparent;color:inherit;border-left:1px solid var(--line);padding:10px 0 10px 25px;font-size:12px;gap:11px}
.site-header .header-cta:hover {background:transparent;color:var(--brass)}
.header-cta [data-cart-count] {border-radius:0;min-width:23px;height:23px;background:var(--ink);color:var(--paper);font:11px var(--mono)}
.marsh-home>.site-header {position:absolute;inset:0 0 auto;z-index:20;background:transparent;color:var(--paper);border-bottom-color:#ffffff30}
.marsh-home>.site-header .header-cta {border-left-color:#ffffff45}
.marsh-home>.site-header .header-cta [data-cart-count] {background:var(--paper);color:var(--deep)}

/* One paused film. entrance.js paints both the chosen frame and its copy. */
.marsh-entrance {height:500svh;position:relative;background:var(--deep);--scene-progress:0;--story-shade:0}
.entrance-stage {position:sticky;top:0;height:100svh;min-height:630px;overflow:hidden;isolation:isolate;background:var(--deep)}
.entrance-film {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3}
.entrance-shade,.entrance-story-shade {position:absolute;inset:0;z-index:-2;pointer-events:none}
.entrance-shade {opacity:calc(1 - var(--story-shade));background:linear-gradient(270deg,#101f17bc 0%,#13221955 43%,transparent 75%),linear-gradient(180deg,#07160e60,transparent 24%,transparent 70%,#0819107a)}
.entrance-story-shade {opacity:var(--story-shade);background:linear-gradient(90deg,#0c2018d6 0%,#11251b78 43%,transparent 78%),linear-gradient(180deg,#081b1250,transparent 30%,transparent 73%,#0819107a)}
.entrance-copy {position:absolute;left:53%;right:var(--gutter);top:25%;color:var(--paper);max-width:680px}
.entrance-copy[data-scene-copy] {opacity:0;pointer-events:none;will-change:opacity,transform}
.entrance-copy[data-scene-copy="0"] {opacity:1}
.entrance-copy[data-scene-copy]:not([inert]) {pointer-events:auto}
.entrance-copy .eyebrow {color:#eee8d8;font-size:10px;letter-spacing:.1em;margin-bottom:22px}
.entrance-copy h1,.entrance-copy h2 {font-size:clamp(72px,8.3vw,128px);font-weight:800;letter-spacing:-.015em;line-height:.9;text-transform:uppercase;text-wrap:initial}
.entrance-copy h1 em,.entrance-copy h2 em {font-style:normal;font-weight:800;color:#ddc096}
.entrance-copy>p:not(.eyebrow) {font-size:15px;line-height:1.7;color:#f0ebdc;margin-top:26px;max-width:370px}
.entrance-story-copy {left:var(--gutter);right:auto;top:28%;width:51%;max-width:760px}
.entrance-actions {display:flex;align-items:center;gap:26px;margin-top:29px}
.entrance-actions .button,.entrance-actions .text-link {white-space:nowrap;flex-shrink:0}
.entrance-actions .button {min-width:176px}
.entrance-actions .text-link,.entrance-copy .story-call {color:var(--paper);border-color:#f1efe580;font-size:12px}
.entrance-copy .story-call {margin-top:27px}
.entrance-controls {position:absolute;bottom:29px;left:var(--gutter);right:var(--gutter);display:flex;align-items:center;gap:20px;color:var(--paper);font:10px/1.5 var(--mono)}
.entrance-scroll {display:flex;align-items:center;gap:16px;margin-right:auto;letter-spacing:.06em;text-transform:uppercase}
.entrance-scroll span {font-size:22px}
.scene-count {font-variant-numeric:tabular-nums;letter-spacing:.08em}
.scene-skip {font-size:11px;text-decoration:none;border-bottom:1px solid #ffffff80;padding:5px 0}
.scene-information {position:relative}
.scene-information summary {list-style:none;display:grid;place-items:center;width:32px;min-height:32px;border:1px solid #ffffff65;background:#12281c65;color:var(--paper);cursor:pointer;font:italic 14px Georgia,serif}
.scene-information summary::-webkit-details-marker {display:none}
.scene-information p {position:absolute;right:0;bottom:45px;width:270px;padding:20px;background:var(--paper);color:var(--ink);font:12px/1.65 var(--body);box-shadow:0 5px 25px #0002}
.scene-progress {position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff26}
.scene-progress>span {display:block;width:100%;height:100%;transform:scaleX(var(--scene-progress));transform-origin:left;background:var(--orange);will-change:transform}
.scene-static.marsh-entrance {height:auto!important;min-height:0!important}
.scene-static .entrance-stage {position:relative}
.scene-static .entrance-controls,.scene-static .scene-progress {display:none}

/* One open assembly: the decoy remains while its parts take focus. */
.product-story {position:relative;z-index:2;background:var(--paper);padding-top:108px;padding-bottom:85px}
.story-stage {position:relative}
.story-decoy {position:absolute;right:-3%;top:-278px;width:66%;max-width:1000px;pointer-events:none;z-index:3}
.story-decoy img {width:100%;height:auto;filter:drop-shadow(0 27px 18px #132a171b)}
.story-heading {display:grid;grid-template-columns:1.08fr .92fr;gap:10%;align-items:end;margin:0 0 70px}
.story-heading>div {position:relative;z-index:4}
.story-heading h2 {font-size:clamp(65px,7.3vw,112px);line-height:.91;text-wrap:initial;max-width:680px}
.story-heading h2>span {color:#7b866f}
.story-heading>p {max-width:370px;justify-self:center;color:var(--muted);font-size:15px;line-height:1.85;padding-top:240px;padding-bottom:5px}
.assembly-word,.mechanism-navigation {display:none}
.feature-sequence {max-width:1050px;margin:0 auto}
.feature-step {position:relative;display:grid;grid-template-columns:1fr 1.05fr;gap:10%;align-items:center;min-height:330px;padding:25px 0}
.feature-copy {max-width:365px;padding-left:30px}
.feature-copy .eyebrow {margin-bottom:20px;color:var(--muted);display:flex;gap:18px;align-items:center}
.feature-copy .eyebrow>span {color:var(--brass);font-size:12px}
.feature-copy h3 {font:800 clamp(40px,4.9vw,70px)/.94 var(--display);letter-spacing:-.012em;text-transform:uppercase}
.feature-copy>p:not(.eyebrow) {font-size:14px;line-height:1.8;color:var(--muted);max-width:310px;margin:20px 0 14px}
.feature-copy .text-link {font-size:11px}
.feature-object {position:relative;height:310px;display:flex;align-items:center;justify-content:center;isolation:isolate}
.feature-object::before {content:"";position:absolute;width:75%;height:46%;border:1px solid #b4bca240;border-radius:50%;transform:rotate(-14deg);z-index:-1}
.feature-object::after {content:"";position:absolute;width:96%;height:64%;border:1px solid #b4bca228;border-radius:50%;transform:rotate(-14deg);z-index:-1}
.feature-object img {position:relative;z-index:2;width:auto;height:90%;max-width:82%;object-fit:contain;filter:drop-shadow(13px 19px 13px #172b2318)}
.detail-index {position:absolute;right:5%;top:22%;font:800 185px/.8 var(--display);letter-spacing:-.025em;color:#e0e4d4;z-index:-1}
.feature-call .feature-object img {height:79%;transform:rotate(8deg)}
.feature-back {grid-template-columns:1.05fr 1fr}
.feature-back .feature-copy {grid-column:2;grid-row:1;padding-left:15px}
.feature-back .feature-object {grid-column:1;grid-row:1}
.feature-back .feature-object img {transform:rotate(-17deg);height:94%}
.feature-feet .feature-object img {transform:rotate(12deg);height:88%}
.feature-back .detail-index {right:auto;left:0}

/* Enhancement is optional. Without it all three explanations remain in flow. */
.product-story.story-scroll {height:320svh;padding:0 var(--gutter)}
.story-scroll .story-stage {position:sticky;top:0;height:100svh;min-height:640px}
.story-scroll .story-heading {position:absolute;top:108px;left:0;right:0;margin:0;opacity:var(--intro-opacity,1);transform:translateY(var(--intro-y,0px));pointer-events:none}
.story-scroll .story-decoy {left:var(--duck-left,39%);right:auto;top:0;width:var(--duck-width,66%);max-width:none;transform:translateY(var(--duck-y,-170px));will-change:transform,left,width}
.story-scroll .assembly-word {display:block;position:absolute;top:36%;left:0;right:0;font:800 14.1vw/.85 var(--display);letter-spacing:-.025em;white-space:nowrap;text-transform:uppercase;text-align:center;color:#dfe4d3;opacity:var(--assembly-opacity,0);z-index:0;pointer-events:none}
.story-scroll .feature-sequence {position:absolute;inset:0;max-width:none;margin:0;z-index:4;pointer-events:none}
.story-scroll .feature-step {display:block;position:absolute;inset:0;min-height:0;padding:0;opacity:0;pointer-events:none;transform:translateY(18px);transition:opacity .35s ease,transform .6s cubic-bezier(.2,.65,.2,1)}
.story-scroll .feature-step.is-active {opacity:1;transform:none}
.story-scroll .feature-copy {position:absolute;width:28%;max-width:345px;padding:0}
.story-scroll .feature-step.is-active .feature-copy {pointer-events:auto}
.story-scroll .feature-copy h3 {font-size:clamp(44px,4.5vw,68px)}
.story-scroll .feature-copy .eyebrow {margin-bottom:18px}
.story-scroll .feature-copy>p:not(.eyebrow) {font-size:13px;max-width:285px;margin:19px 0 13px}
.story-scroll .feature-object {position:absolute;margin:0;height:30%;width:25%;pointer-events:none}
.story-scroll .detail-index {font-size:clamp(105px,10.5vw,170px);top:26%;right:-3%}
.story-scroll .feature-call .feature-copy {top:7%;left:0}
.story-scroll .feature-call .feature-object {right:9%;top:4%;height:28%;width:23%}
.story-scroll .feature-call .feature-object::after {width:138%;height:72%}
.story-scroll .feature-back .feature-copy {top:5%;right:0}
.story-scroll .feature-back .feature-object {left:15%;top:2%;width:26%;height:32%}
.story-scroll .feature-back .detail-index {left:-15%;right:auto}
.story-scroll .feature-feet .feature-copy {left:0;bottom:8%}
.story-scroll .feature-feet .feature-object {right:5%;bottom:6%;width:24%;height:32%}
.story-scroll .feature-feet .detail-index {right:-7%;top:24%}
.story-scroll .mechanism-navigation {position:absolute;right:0;bottom:28px;display:flex;gap:24px;z-index:6;opacity:var(--assembly-opacity,0)}
.mechanism-navigation button {display:flex;align-items:center;gap:9px;padding:10px 0;border:0;border-bottom:1px solid transparent;background:transparent;color:var(--muted);font:10px/1.5 var(--mono)}
.mechanism-navigation button>span {color:var(--brass)}
.mechanism-navigation button[aria-pressed=true] {border-bottom-color:var(--ink);color:var(--ink)}

@media (min-width:1700px) {
  .story-scroll .assembly-word {font-size:240px}
}
@media (max-width:1100px) {
  .story-decoy {top:-205px;right:-2%;width:64%}
  .story-heading {gap:7%;margin-bottom:45px}
  .story-heading h2 {font-size:clamp(64px,7.5vw,88px)}
  .story-heading>p {padding-top:190px;font-size:14px}
  .story-scroll .story-heading {top:85px}
  .story-scroll .feature-copy {width:29%}
  .story-scroll .feature-copy h3 {font-size:46px}
  .story-scroll .feature-copy>p:not(.eyebrow) {font-size:12px;line-height:1.7}
  .story-scroll .feature-call .feature-copy {top:6%}
  .story-scroll .feature-back .feature-copy {top:4%}
  .story-scroll .feature-feet .feature-copy {bottom:8%}
  .story-scroll .feature-back .feature-object {left:12%;height:31%}
  .story-scroll .feature-call .feature-object {right:12%;height:28%}
  .story-scroll .feature-feet .feature-object {right:4%;height:30%}
}
@media (max-width:900px) {
  .product-story {padding-top:95px;padding-bottom:50px}
  .story-decoy {top:-179px}
  .story-heading h2 {font-size:70px}
  .story-heading>p {padding-top:145px}
  .feature-step {min-height:305px;gap:7%;padding:20px 0}
  .feature-copy {padding-left:0}
  .feature-copy h3 {font-size:51px}
  .feature-object {height:270px}
  .detail-index {font-size:155px}
}
@media (max-width:760px) {
  .product-story {padding-top:193px;padding-bottom:44px}
  .story-decoy {width:calc(100% + 24px);max-width:680px;right:-24px;top:-263px}
  .story-heading {grid-template-columns:1fr;gap:25px;margin-bottom:34px}
  .story-heading h2 {font-size:clamp(65px,16vw,94px);line-height:.9;max-width:540px}
  .story-heading h2>span {display:block;max-width:500px}
  .story-heading .eyebrow {font-size:8px;margin-bottom:21px}
  .story-heading>p {justify-self:start;max-width:445px;padding:0;font-size:14px;line-height:1.8}
  .feature-step {grid-template-columns:1.12fr .88fr;gap:15px;min-height:280px;padding:18px 0}
  .feature-back {grid-template-columns:.88fr 1.12fr;margin-top:10px;margin-bottom:12px}
  .feature-copy {max-width:none;padding-left:0}
  .feature-copy .eyebrow {font-size:8px;gap:12px;margin-bottom:16px}
  .feature-copy .eyebrow>span {font-size:10px}
  .feature-copy h3 {font-size:clamp(37px,8.1vw,53px);line-height:.95}
  .feature-copy>p:not(.eyebrow) {font-size:12px;line-height:1.75;margin:17px 0 13px;max-width:240px}
  .feature-copy .text-link {font-size:10px;gap:14px}
  .feature-object {height:230px}
  .feature-object img {max-width:88%}
  .feature-object::before {width:80%}
  .feature-object::after {width:100%}
  .feature-back .feature-copy {padding-left:8px}
  .detail-index {font-size:110px;right:-1%;top:28%}
  .feature-call .feature-object img {height:65%;max-width:86%}
  .feature-back .feature-object img {height:84%}
  .feature-feet .feature-object img {height:80%}
}
@media (max-width:390px) {
  .product-story {padding-top:163px}
  .story-decoy {top:-222px;right:-21px;width:calc(100% + 21px)}
  .story-heading h2 {font-size:62px}
  .feature-step {gap:8px}
  .feature-copy h3 {font-size:clamp(32px,9vw,36px)}
  .feature-copy>p:not(.eyebrow) {font-size:11px}
  .feature-object {height:215px}
  .feature-copy .text-link {font-size:9px;gap:11px}
  .feature-back .feature-copy {padding-left:5px}
  .detail-index {font-size:95px}
}
@media (max-height:740px) and (min-width:901px) {
  .story-scroll .story-stage {min-height:560px}
  .story-scroll .story-heading {top:60px}
  .story-scroll .story-heading h2 {font-size:77px}
  .story-scroll .story-heading>p {padding-top:180px}
  .story-scroll .feature-copy h3 {font-size:46px}
  .story-scroll .feature-copy .eyebrow {margin-bottom:13px}
  .story-scroll .feature-copy>p:not(.eyebrow) {font-size:12px;line-height:1.6;margin-top:14px}
  .story-scroll .feature-call .feature-copy {top:4%}
  .story-scroll .feature-back .feature-copy {top:3%}
  .story-scroll .feature-feet .feature-copy {bottom:8%}
}

/* Demonstration: picture, sound, and the remote in your hand. */
.field-demonstration {display:block;background:var(--deep);color:var(--paper);padding-top:92px;padding-bottom:72px;overflow:hidden}
.demo-heading {display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:10%;margin-bottom:47px}
.demo-heading .eyebrow {color:var(--orange)}
.demo-heading h2 {font-size:clamp(67px,8vw,122px);line-height:.89;text-wrap:initial}
.demo-heading h2>span {color:#b4bd9e}
.demo-heading>p {max-width:340px;color:#c2cbbd;font-size:15px;line-height:1.8;margin-bottom:8px}
.demo-composition {position:relative;margin-right:6%;isolation:isolate}
.demo-preview {position:relative;display:block;padding:0;border:0;width:100%;aspect-ratio:2.15;background:#0e1c14;color:var(--paper);cursor:pointer;overflow:hidden}
.demo-preview::after {content:"";position:absolute;inset:0;background:linear-gradient(0deg,#071a14af,transparent 52%),linear-gradient(90deg,#0b1b1529,transparent 50%);pointer-events:none}
.demo-preview>img {width:100%;height:100%;object-fit:cover;object-position:center 52%;opacity:.91;transition:transform 1s ease,opacity .3s ease}
.demo-preview:hover>img {transform:scale(1.025);opacity:1}
.demo-play {position:absolute;left:35px;bottom:31px;display:flex;align-items:center;gap:17px;z-index:2;text-align:left;font:700 15px/1.3 var(--body)}
.demo-play>b {display:grid;place-items:center;width:63px;height:63px;border:1px solid #f1efe5a0;border-radius:50%;font-size:16px;padding-left:3px;background:#f1efe50b}
.demo-play small {display:block;color:#d1d6c7;font-size:10px;font-weight:400;margin-top:6px;letter-spacing:.05em}
.demo-remote {position:absolute;z-index:3;right:-3.3%;top:-7%;width:23%;max-width:275px;height:118%;object-fit:contain;transform:rotate(11deg);filter:drop-shadow(-18px 25px 17px #0005);pointer-events:none}
.demo-caption {display:flex;align-items:center;gap:40px;margin-top:31px;font-size:12px;line-height:1.65;padding-right:27%}
.demo-caption p {color:var(--paper)}
.demo-caption p>span {color:#9da995}
.demo-caption .text-link {margin-left:auto;color:var(--paper);border-color:#71816a;white-space:nowrap}

/* Decoys: generous imagery with the purchase information kept close. */
.shop-section {background:var(--paper);padding-top:111px;padding-bottom:105px}
.shop-heading {display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-bottom:65px}
.shop-heading h2 {font-size:clamp(61px,7vw,104px);line-height:.91;text-wrap:initial}
.shop-heading p:not(.eyebrow) {font-size:14px;line-height:1.8;color:var(--muted);margin-top:25px;max-width:475px}
.decoy-tabs {display:flex;gap:0;margin-bottom:5px;border-bottom:1px solid var(--line);flex:none}
.decoy-tabs button {min-height:56px;padding:16px 22px;gap:10px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:12px}
.decoy-tabs button[aria-pressed=true] {border-color:var(--ink);background:transparent;color:var(--ink)}
.decoy-tabs button:hover {background:#e8eadd}
.model-dot {width:10px;height:10px}
.shop-layout {grid-template-columns:1.22fr 1fr;gap:7.5%;align-items:start}
.shop-gallery {padding-top:15px;position:sticky;top:30px}
.shop-photo {aspect-ratio:1.15;background:transparent;overflow:visible;isolation:isolate}
.shop-photo::before {content:attr(data-model-label);position:absolute;inset:10% 0 auto;z-index:-1;font:800 clamp(90px,13.7vw,215px)/1 var(--display);text-align:center;text-transform:uppercase;color:#e2e5d6;letter-spacing:-.035em}
.shop-photo::after {content:"";position:absolute;width:74%;height:12%;bottom:15%;left:11%;background:#a9b29838;filter:blur(26px);border-radius:50%;z-index:-1}
.shop-photo img {width:100%;height:100%;padding:25px 0;object-fit:contain;mix-blend-mode:normal;filter:drop-shadow(0 15px 10px #21362b13)}
.shop-photo img[src$=".jpg"] {mix-blend-mode:multiply}
.photo-choices {gap:20px;margin-top:9px;max-width:490px;margin-left:auto;margin-right:auto;border-top:1px solid var(--line)}
.photo-choices button {border:0;border-bottom:2px solid transparent;min-height:72px;padding:7px 3px;gap:12px;background:transparent;font-size:11px;color:var(--muted)}
.photo-choices button[aria-pressed=true] {border-bottom-color:var(--ink);color:var(--ink)}
.photo-choices img {width:45px;height:42px;object-fit:contain;mix-blend-mode:multiply}
.purchase-panel {padding-top:17px}
.purchase-panel .eyebrow {font-size:9px;letter-spacing:.1em;margin-bottom:16px}
.purchase-title {display:flex;align-items:center;justify-content:space-between;gap:20px}
.purchase-title h3,.purchase-title h1,.decoy-page .purchase-title h1 {font:800 clamp(38px,3.7vw,58px)/.95 var(--display);text-transform:uppercase;letter-spacing:-.014em}
.purchase-panel .buy-price {font:600 26px/1.1 var(--body);letter-spacing:-.04em;white-space:nowrap;margin:0}
.buy-price small {display:block;font:10px/1.5 var(--mono);letter-spacing:0;text-align:right;margin-top:6px}
.purchase-panel>p.purchase-description {font-size:14px;line-height:1.8;max-width:445px;margin:24px 0 28px;color:var(--muted)}
.buy-form {margin:24px 0 12px;gap:14px}
.buy-form label {font-size:10px;color:var(--muted);gap:8px}
.buy-form input {width:73px;height:56px;background:var(--white);border-color:var(--line);font-size:16px}
.buy-form button {min-height:56px}
.stock-line,.purchase-panel>p.stock-line {font-size:11px!important;line-height:1.6!important;margin:0 0 23px!important;color:var(--muted)}
.purchase-assurance {padding:17px 0;font-size:11px;gap:8px 18px}
.purchase-detail {font-size:12px;border-color:var(--line)}
.purchase-detail summary {font-size:12px;padding:19px 0}
.box-contents {font-size:12px;line-height:1.6;gap:9px 15px;padding-bottom:21px;color:var(--muted)}
.product-facts>div {font-size:12px;padding:10px 0;grid-template-columns:108px 1fr}
.purchase-links {font-size:11px;gap:20px;padding-top:20px}
.pdp-models {gap:0;border-bottom:1px solid var(--line)}
.pdp-models a {font-size:12px;border:0;border-bottom:2px solid transparent;background:transparent;padding:12px 18px}
.pdp-models a.selected {background:transparent;border-color:var(--ink)}

/* Ownership is one compact set of useful routes. */
.ownership {background:#e7eadc;grid-template-columns:1fr 1.1fr;gap:10%;padding-top:76px;padding-bottom:76px}
.ownership-title h2 {font-size:clamp(48px,5.1vw,76px);line-height:.95;max-width:440px;text-wrap:initial}
.ownership-title>p:not(.eyebrow) {font-size:14px;line-height:1.8;margin-top:23px;max-width:340px}
.ownership-links>a {padding:23px 0;gap:20px;border-color:#c6ceba}
.ownership-links>a>span {display:block;font:10px var(--mono);color:#899278}
.ownership-links h3 {font:800 29px/1.1 var(--display);text-transform:uppercase;letter-spacing:0}
.ownership-links p {font-size:12px;line-height:1.6;margin-top:6px;color:var(--muted)}
.ownership-links b {font-size:23px;color:#7b876b}

/* Interior pages use the same field palette and editorial scale. */
.page-intro,.interior .page-intro {padding-top:74px;padding-bottom:60px;background:var(--paper);border-bottom:1px solid var(--line)}
.page-intro>p:not(.eyebrow),.interior .page-intro>p:not(.eyebrow) {font-size:16px;line-height:1.8;max-width:620px;margin-top:27px}
.page-intro h1 {max-width:1150px}
.breadcrumb {font:10px/1.6 var(--mono);padding-top:30px;padding-bottom:8px}
.product-detail-page,.decoy-page .breadcrumb {background:var(--paper)}
.product-detail-page {padding-top:45px}
.decoy-page .shop-photo {aspect-ratio:1.08}
.product-page {padding-top:38px;padding-bottom:90px}
.product-page .product-main-photo {background:transparent;border:0}
.product-main-photo img {mix-blend-mode:multiply;padding:30px}
.product-page .purchase-panel h1 {font:800 clamp(48px,5vw,75px)/.95 var(--display);letter-spacing:-.015em}
.product-page .purchase-panel>p:not(.eyebrow):not(.buy-price) {font-size:15px;line-height:1.8}
.product-page .purchase-panel .buy-price {margin-top:28px}
.product-page .included-block h2 {font:800 27px/1 var(--display);text-transform:uppercase}
.product-help {font-size:12px;gap:12px}
.detail-photos {gap:16px}
.detail-photos figure {background:transparent;border-top:1px solid var(--line)}
.detail-photos img {mix-blend-mode:multiply}
.detail-photos figcaption {border:0;padding:13px 0}
.catalog-section {padding-top:56px}
.catalog-grid {gap:40px 30px}
.catalog-card {border:0;background:transparent}
.catalog-photo {background:#e9ecdf;aspect-ratio:1.2;padding:19px}
.catalog-photo img {mix-blend-mode:multiply}
.catalog-copy {border:0;border-bottom:1px solid var(--line);padding:23px 0 26px}
.catalog-copy .eyebrow {display:none}
.catalog-copy h3,.related .catalog-copy h3 {font:800 31px/1.05 var(--display);text-transform:uppercase;letter-spacing:-.008em;max-width:85%;margin-bottom:14px}
.catalog-copy small {font:13px/1.5 var(--body)}
.catalog-copy>b {right:0;bottom:23px;font-size:22px}
.related {background:#e7eadc}
.section-heading h2 {font-size:clamp(45px,5vw,72px)}
.section-heading>p {font-size:14px}
.section-heading {margin-bottom:36px}
.jump-links {gap:27px;font:11px/1.5 var(--mono);margin-top:36px}
.jump-links a {padding:8px 0}
.guide-library {padding-top:0;padding-bottom:0}
.setup-guide {grid-template-columns:.9fr 1.1fr;gap:9%;padding:64px 0}
.guide-description h2 {font-size:clamp(44px,5.3vw,76px);max-width:470px}
.guide-description>.eyebrow {font-size:10px;color:var(--brass)}
.guide-description>p:last-child {font-size:15px;line-height:1.8;margin-top:23px}
.video-embed {background:#e7eadc;border:0}
.video-embed>img {opacity:.95;padding:23px;height:100%;mix-blend-mode:multiply}
.play-guide {font-size:12px;min-height:52px;background:#172b23ec;padding:17px 22px}
.play-guide span {margin-left:18px}
.support-contact {background:#e7eadc}
.support-contact p {font-size:15px;line-height:1.8;margin:23px 0}
.support-contact>div>a {font-size:14px;margin:10px 0}
.support-contact h3 {font:800 30px/1 var(--display);text-transform:uppercase}
.mechanism {background:#e7eadc;gap:9%}
.mechanism-heading h2 {font-size:clamp(48px,5.5vw,80px)}
.mechanism-heading>p:not(.eyebrow) {font-size:15px;line-height:1.8}
.mechanism-explorer {background:transparent}
.mechanism-tabs {border-color:#c0c9b3}
.mechanism-tabs button {font-size:12px;min-height:56px}
.mechanism-image {background:transparent;height:330px;padding:22px 45px}
.mechanism-caption {padding:25px 0;border-color:#c0c9b3;min-height:160px}
.mechanism-caption h3 {font:800 31px/1 var(--display);text-transform:uppercase}
.mechanism-caption p {font-size:14px;line-height:1.75}
.mechanism-caption a {font-size:12px}
.policy {font-size:15px;line-height:1.85;padding-top:55px;max-width:1040px}
.policy h2,.policy h1 {font:800 35px/1.1 var(--display);text-transform:uppercase;margin:32px 0 16px}
.policy h2:first-child {margin-top:0}
.cart-layout {padding-top:46px;padding-bottom:100px;min-height:50vh}
.cart-row h2 {font:800 29px/1 var(--display);text-transform:uppercase}
.cart-row p,.cart-summary>p,.cart-summary dl {font-size:14px}
.cart-row img {background:#e7eadc;mix-blend-mode:multiply}
.cart-row input {min-height:44px;background:var(--white)}
.cart-summary {background:#e3e7d7;padding:35px}
.cart-summary h2 {font:800 39px/1 var(--display);text-transform:uppercase}

/* Dialog, cart feedback, and footer. */
.film-dialog {width:min(1200px,94vw);max-height:92svh;background:var(--paper)}
.film-dialog::backdrop {background:#09170fe8}
.film-dialog .dialog-top {padding:21px 27px}
.dialog-top h2,.interior .dialog-top h2 {font:800 36px/.95 var(--display);text-transform:uppercase}
.dialog-top .eyebrow {display:none}
.dialog-top>button {min-height:44px;border:1px solid var(--line);padding:10px 15px;font-size:12px}
.film-dialog video {display:block}
.toast {font-size:13px;padding:18px 23px;background:var(--deep);color:var(--paper);width:max-content;max-width:calc(100vw - 32px)}
.toast a {display:inline-block;color:var(--orange);margin-left:15px}
footer {background:var(--deep);color:var(--paper);padding:70px var(--gutter) 28px}
.footer-top {grid-template-columns:1.3fr 1fr .85fr;gap:50px;padding-bottom:49px}
.footer-top .wordmark {font-size:34px}
.footer-top .wordmark span {font-size:57px}
.footer-top>div>p {font-size:13px;line-height:1.7;color:#a5b49b;margin-top:26px}
.footer-contact {gap:11px}
.footer-contact .eyebrow {font:10px/1.5 var(--mono);letter-spacing:.08em;color:#8fa181;margin-bottom:12px}
.footer-contact a {font-size:13px;overflow-wrap:anywhere}
.footer-top nav {gap:13px}
.footer-top nav a {font-size:12px;color:#c4ceba}
.footer-top nav a:last-child {color:var(--orange);margin-top:9px}
.footer-bottom {padding-top:24px;font:10px/1.6 var(--mono);color:#8c9e7f;gap:25px;border-color:#ffffff20;margin:0}

@media (min-width:1700px) {
  :root {--gutter:max(6vw,calc((100vw - 1520px)/2))}
}
@media (max-width:1100px) {
  .site-header,.interior .site-header {gap:25px}
  .site-header nav {gap:20px}
  .entrance-copy {left:51%;top:26%}
  .entrance-copy h1,.entrance-copy h2 {font-size:clamp(68px,8.8vw,96px)}
  .entrance-story-copy {left:var(--gutter);width:53%}
  .entrance-actions {gap:20px}
  .entrance-actions .button {min-width:152px;padding:16px 18px;font-size:12px;gap:20px}
  .entrance-actions .text-link {font-size:11px;gap:14px}
  .demo-heading {gap:7%}
  .demo-heading>p {font-size:14px}
  .demo-remote {right:-5%;width:25%}
  .shop-heading {gap:30px}
  .shop-heading h2 {font-size:75px}
  .decoy-tabs button {padding:14px;font-size:11px}
  .shop-layout {grid-template-columns:1.1fr 1fr;gap:6%}
  .purchase-title {align-items:flex-start;flex-direction:column;gap:16px}
  .purchase-panel .buy-price {font-size:25px}
  .buy-price small {display:inline;font-size:9px;margin-left:7px}
  .purchase-title h3,.purchase-title h1,.decoy-page .purchase-title h1 {font-size:45px}
  .ownership {gap:7%}
  .ownership-links h3 {font-size:26px}
  .footer-top {gap:32px}
}
@media (min-width:761px) and (max-width:1000px) {
  .entrance-copy {left:51%;right:4%;top:28%}
  .entrance-copy h1,.entrance-copy h2 {font-size:78px}
  .entrance-story-copy {left:var(--gutter);right:auto;width:56%}
  .entrance-copy .eyebrow {font-size:9px;max-width:250px}
  .entrance-actions {flex-wrap:wrap;gap:16px 20px;margin-top:25px}
  .entrance-film {object-position:45% center}
}
@media (max-width:900px) {
  .site-header,.interior .site-header {min-height:90px;gap:21px;flex-wrap:wrap}
  .js .menu-toggle {display:block;border:0;color:inherit;background:transparent;font-size:12px;padding:10px 0;margin-left:auto;min-height:44px}
  .js .site-header .header-cta {margin-left:0;padding-left:20px}
  .js .site-header nav {display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);border-top:1px solid var(--line);padding:16px var(--gutter) 25px;box-shadow:0 15px 20px #172b2315;margin:0;z-index:30}
  .js .site-header.menu-open nav {display:flex;flex-direction:column;gap:0}
  .js .site-header nav a {font-size:15px;padding:14px 0}
  .js .marsh-home>.site-header nav {background:var(--deep);color:var(--paper);border-top-color:#ffffff30}
  .section-shell {padding-top:78px;padding-bottom:78px}
  .shop-heading {align-items:flex-start;flex-direction:column;gap:28px;margin-bottom:42px}
  .decoy-tabs {align-self:stretch;max-width:400px}
  .decoy-tabs button {flex:1;min-height:52px;font-size:12px}
  .shop-gallery {top:22px}
  .shop-photo {aspect-ratio:.95}
  .photo-choices {gap:9px}
  .photo-choices button {flex-direction:column;gap:6px;font-size:10px;min-height:83px}
  .purchase-title h3,.purchase-title h1,.decoy-page .purchase-title h1 {font-size:40px}
  .purchase-panel>p.purchase-description {font-size:13px}
  .buy-form button {padding:15px 18px;font-size:12px}
  .buy-form input {width:62px}
  .purchase-assurance {font-size:10px}
  .box-contents {font-size:11px}
  .purchase-links {font-size:10px;gap:12px}
  .demo-heading h2 {font-size:80px}
  .demo-preview {aspect-ratio:1.8}
  .demo-play {left:26px;bottom:26px}
  .demo-remote {width:29%;right:-7%}
  .demo-caption {padding-right:26%;gap:25px}
  .ownership {gap:6%}
  .ownership-links>a {gap:15px}
  .ownership-links h3 {font-size:23px}
  .ownership-links p {font-size:11px}
  .page-intro,.interior .page-intro {padding-top:60px;padding-bottom:53px}
  .catalog-grid {gap:32px 22px}
  .catalog-copy h3,.related .catalog-copy h3 {font-size:27px}
  .setup-guide {gap:7%;padding:50px 0}
  .guide-description h2 {font-size:50px}
  .guide-description>p:last-child {font-size:14px}
  .play-guide {font-size:11px;padding:16px}
  .mechanism {gap:6%}
  .mechanism-tabs button {font-size:11px}
  .mechanism-image {height:265px;padding:20px}
  .mechanism-caption h3 {font-size:27px}
  .footer-top {gap:28px}
}
@media (max-width:760px) {
  :root {--gutter:24px}
  body {font-size:15px}
  .section-shell {padding:64px var(--gutter)}
  h1,.interior h1 {font-size:64px}
  h2,.interior h2 {font-size:52px}
  .eyebrow {font-size:9px;margin-bottom:19px}
  .site-header,.interior .site-header {min-height:86px;padding:19px var(--gutter);gap:20px}
  .site-header .wordmark {font-size:19px}
  .site-header .wordmark span {font-size:32px}
  .site-header .header-cta,.js .site-header .header-cta {font-size:12px;gap:9px;padding:9px 0 9px 17px;border-color:var(--line)}
  .header-cta [data-cart-count],.site-header .header-cta [data-cart-count] {min-width:21px;height:21px;font-size:10px}
  .marsh-home>.site-header .header-cta {border-color:#ffffff45}
  .marsh-entrance {height:460svh}
  .entrance-stage {height:100svh;min-height:560px}
  .entrance-film {top:auto;bottom:0;width:100%;height:62%;object-fit:cover;object-position:center}
  .entrance-shade,.entrance-story-shade {background:linear-gradient(180deg,#172b23 0%,#172b23 30%,#172b23f5 38%,#172b2320 57%,transparent 76%,#0d241880);opacity:1}
  .entrance-story-shade {display:none}
  .entrance-copy,.entrance-story-copy {top:122px;left:var(--gutter);right:var(--gutter);width:auto;max-width:510px}
  .entrance-copy .eyebrow {font-size:8px;margin-bottom:17px;letter-spacing:.075em}
  .entrance-copy h1,.entrance-copy h2 {font-size:clamp(64px,15.5vw,102px);line-height:.89;letter-spacing:-.012em}
  .entrance-copy>p:not(.eyebrow) {font-size:13px;line-height:1.65;margin-top:20px;max-width:320px}
  .entrance-actions {gap:23px;margin-top:23px;flex-wrap:nowrap}
  .entrance-actions .button {font-size:12px;padding:14px 17px;min-height:49px;min-width:150px;gap:20px}
  .entrance-controls {bottom:23px;left:var(--gutter);right:var(--gutter);gap:15px;font-size:9px}
  .entrance-scroll {font-size:8px;letter-spacing:.035em;gap:9px}
  .entrance-scroll span {font-size:19px}
  .scene-count {font-size:9px;letter-spacing:.02em}
  .scene-skip {font-size:9px;white-space:nowrap}
  .scene-information summary {width:28px;min-height:28px;font-size:13px}
  .scene-information p {width:250px;font-size:11px}
  .field-demonstration {padding-top:58px;padding-bottom:47px}
  .demo-heading {grid-template-columns:1fr;gap:27px;margin-bottom:35px}
  .demo-heading h2 {font-size:clamp(67px,16vw,97px);line-height:.89}
  .demo-heading>p {font-size:14px;max-width:430px;margin:0}
  .demo-composition {margin-right:12px}
  .demo-preview {aspect-ratio:1.2}
  .demo-preview>img {object-position:41% center}
  .demo-play {left:20px;bottom:21px;gap:12px;font-size:12px}
  .demo-play>b {width:46px;height:46px;font-size:13px}
  .demo-play small {font-size:9px;margin-top:4px}
  .demo-remote {width:32%;height:91%;top:-7%;right:-9%;max-width:210px;transform:rotate(10deg);filter:drop-shadow(-10px 16px 12px #0006)}
  .demo-caption {padding:0;gap:25px;margin-top:26px;font-size:11px}
  .demo-caption .text-link {font-size:10px;gap:15px}
  .shop-section {padding-top:65px;padding-bottom:65px}
  .shop-heading {gap:28px;margin-bottom:25px}
  .shop-heading h2 {font-size:clamp(63px,14.5vw,88px);line-height:.91}
  .shop-heading p:not(.eyebrow) {font-size:14px;margin-top:23px;max-width:420px}
  .decoy-tabs {margin:0;max-width:none;width:100%}
  .decoy-tabs button {font-size:12px;min-height:52px;padding:14px}
  .shop-layout {grid-template-columns:1fr;gap:29px}
  .shop-gallery {position:relative;top:auto;padding-top:0}
  .shop-photo,.decoy-page .shop-photo {aspect-ratio:1.34}
  .shop-photo::before {font-size:clamp(95px,29vw,190px);top:9%}
  .shop-photo img {padding:16px 0}
  .shop-photo::after {bottom:13%;filter:blur(19px)}
  .photo-choices {gap:16px;margin-top:1px;max-width:none}
  .photo-choices button {flex-direction:row;font-size:10px;min-height:60px;gap:9px;padding:6px 0}
  .photo-choices img {width:35px;height:36px}
  .purchase-panel {padding-top:3px}
  .purchase-title {flex-direction:row;align-items:center;gap:15px}
  .purchase-title h3,.purchase-title h1,.decoy-page .purchase-title h1 {font-size:clamp(36px,9vw,52px)}
  .purchase-panel .eyebrow {font-size:8px;margin-bottom:16px}
  .purchase-panel .buy-price {font-size:23px;line-height:1.1}
  .buy-price small {display:block;font-size:8px;margin:6px 0 0;text-align:right}
  .purchase-panel>p.purchase-description {font-size:14px;line-height:1.8;margin:22px 0 25px;max-width:none}
  .buy-form {gap:12px;margin:23px 0 12px}
  .buy-form label {font-size:10px;gap:8px}
  .buy-form input {width:68px;height:56px}
  .buy-form button {min-height:56px;height:auto;font-size:13px}
  .stock-line,.purchase-panel>p.stock-line {font-size:10px!important;margin-bottom:21px!important}
  .purchase-assurance {font-size:10px;gap:9px 18px;padding:17px 0}
  .purchase-detail summary {font-size:12px;padding:18px 0}
  .box-contents {font-size:12px;gap:10px 15px}
  .product-facts>div {font-size:12px;grid-template-columns:105px 1fr}
  .purchase-links {font-size:11px;gap:22px;padding-top:20px}
  .pdp-models a {font-size:11px;flex:1;text-align:center}
  .ownership {grid-template-columns:1fr;gap:31px;padding-top:54px;padding-bottom:50px}
  .ownership-title h2 {font-size:58px;max-width:380px}
  .ownership-title>p:not(.eyebrow) {font-size:14px;margin-top:23px;max-width:400px}
  .ownership-links>a {padding:21px 0;gap:19px}
  .ownership-links h3 {font-size:28px}
  .ownership-links p {font-size:12px;max-width:270px}
  .ownership-links>a>span {font-size:9px}
  .page-intro,.interior .page-intro {padding-top:48px;padding-bottom:42px}
  .page-intro>p:not(.eyebrow),.interior .page-intro>p:not(.eyebrow) {font-size:15px;line-height:1.8;margin-top:24px}
  .breadcrumb {font-size:9px;padding-top:24px;gap:8px}
  .product-detail-page {padding-top:22px}
  .product-page {gap:31px;padding-top:25px;padding-bottom:57px}
  .product-page .purchase-panel h1 {font-size:55px}
  .product-page .purchase-panel>p:not(.eyebrow):not(.buy-price) {font-size:14px}
  .product-main-photo img {padding:10px}
  .catalog-section {padding-top:36px}
  .catalog-grid {gap:29px 17px}
  .catalog-photo {padding:10px;aspect-ratio:1.05}
  .catalog-copy {padding:18px 0 23px}
  .catalog-copy h3,.related .catalog-copy h3 {font-size:25px;margin-bottom:12px;max-width:93%}
  .catalog-copy small {font-size:12px}
  .catalog-copy>b {font-size:17px;bottom:22px;right:0}
  .section-heading {gap:18px;margin-bottom:28px;align-items:start}
  .section-heading h2 {font-size:49px}
  .section-heading>p {font-size:13px}
  .spaced {margin-top:49px}
  .jump-links {gap:10px 23px;font-size:10px;margin-top:28px}
  .guide-library {padding-top:0;padding-bottom:0}
  .setup-guide {grid-template-columns:1fr;gap:28px;padding:41px 0}
  .guide-description h2 {font-size:52px;max-width:450px}
  .guide-description>.eyebrow {font-size:9px;margin-bottom:17px}
  .guide-description>p:last-child {font-size:14px;margin-top:20px;max-width:420px}
  .play-guide {font-size:11px;padding:15px 19px}
  .video-embed>img {padding:18px}
  .support-contact {grid-template-columns:1fr;gap:40px}
  .support-contact p {font-size:14px;margin:22px 0}
  .support-contact>div>a {font-size:14px}
  .support-contact h3 {font-size:29px}
  .mechanism {grid-template-columns:1fr;gap:32px}
  .mechanism-heading h2 {font-size:57px}
  .mechanism-heading>p:not(.eyebrow) {font-size:14px;margin:23px 0}
  .mechanism-tabs button {font-size:11px;min-height:53px}
  .mechanism-image {height:265px;padding:20px 35px}
  .mechanism-caption {padding:23px 0;min-height:160px}
  .mechanism-caption h3 {font-size:30px}
  .mechanism-caption p {font-size:13px}
  .mechanism-caption a {font-size:11px}
  .policy {font-size:14px;padding-top:39px;padding-bottom:48px;line-height:1.85}
  .policy h2,.policy h1 {font-size:31px;margin:28px 0 15px}
  .cart-layout {padding-top:28px;gap:36px;padding-bottom:60px}
  .cart-row h2 {font-size:26px}
  .cart-row p {font-size:12px}
  .cart-summary {padding:27px}
  .cart-summary h2 {font-size:36px}
  .film-dialog {width:calc(100vw - 20px)}
  .film-dialog .dialog-top {padding:18px}
  .dialog-top h2,.interior .dialog-top h2 {font-size:28px}
  .dialog-top>button {min-height:42px;padding:9px 12px;font-size:11px}
  .mobile-purchase:not([hidden]) {background:#f1efe5f5;border-color:var(--line);padding:12px 20px calc(12px + env(safe-area-inset-bottom));gap:17px}
  .mobile-purchase strong {font-size:12px}
  .mobile-purchase>div>span {font-size:11px}
  .mobile-purchase .button {font-size:12px;min-height:44px;padding:13px 20px}
  .marsh-home,.decoy-page {padding-bottom:75px;background:var(--deep)}
  .toast {font-size:12px;bottom:88px;line-height:1.6;padding:16px 19px}
  footer {padding:51px var(--gutter) 26px}
  .footer-top {grid-template-columns:1fr 1fr;gap:35px 25px;padding-bottom:35px}
  .footer-top>div:first-child {grid-column:1/-1;gap:32px;align-items:center}
  .footer-top .wordmark {font-size:28px}
  .footer-top .wordmark span {font-size:47px}
  .footer-top>div>p {font-size:12px;margin:0;line-height:1.7}
  .footer-contact {gap:11px}
  .footer-contact .eyebrow {font-size:8px;letter-spacing:.025em;margin-bottom:9px}
  .footer-contact a {font-size:12px}
  .footer-top nav {gap:12px}
  .footer-top nav a {font-size:11px}
  .footer-top nav a:last-child {margin-top:8px}
  .footer-bottom {font-size:9px;gap:12px;padding-top:23px}
}
@media (max-width:390px) {
  :root {--gutter:21px}
  .site-header,.interior .site-header {gap:15px}
  .entrance-copy,.entrance-story-copy {top:116px}
  .entrance-copy h1,.entrance-copy h2 {font-size:clamp(49px,15.4vw,60px)}
  .entrance-copy>p:not(.eyebrow) {font-size:12px;margin-top:18px}
  .entrance-actions {gap:17px;margin-top:22px}
  .entrance-actions .button {min-width:137px;padding:14px;font-size:11px;gap:18px}
  .entrance-actions .text-link {font-size:10px;gap:12px}
  .entrance-controls {gap:12px}
  .scene-count {display:none}
  .demo-caption {gap:17px}
  .demo-caption .text-link {font-size:9px;gap:12px}
  .shop-heading h2 {font-size:clamp(48px,15.2vw,59px)}
  .purchase-title h3,.purchase-title h1,.decoy-page .purchase-title h1 {font-size:clamp(30px,8.6vw,35px)}
  .purchase-panel .buy-price {font-size:22px}
  .photo-choices {gap:12px}
  .photo-choices button {font-size:9px;gap:7px}
  .purchase-assurance {font-size:9px;gap:10px}
  .ownership-title h2 {font-size:52px}
  .ownership-links h3 {font-size:26px}
  .ownership-links p {font-size:11px}
  .page-intro h1 {font-size:clamp(52px,16vw,62px)}
  .product-page .purchase-panel h1 {font-size:clamp(46px,14vw,55px)}
  .catalog-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}
  .catalog-copy h3,.related .catalog-copy h3 {font-size:23px}
  .catalog-copy small {font-size:11px}
  .footer-top {gap:34px 19px}
  .footer-contact a {font-size:11px}
}
@media (max-height:650px) and (min-width:761px) {
  .entrance-stage {min-height:540px}
  .entrance-copy,.entrance-story-copy {top:145px}
  .entrance-copy h1,.entrance-copy h2 {font-size:70px}
  .entrance-copy>p:not(.eyebrow) {font-size:13px;margin-top:17px}
  .entrance-actions {margin-top:20px}
  .entrance-controls {bottom:19px}
}
/* The source selector marks tablet compositions, including landscape iPads. */
.marsh-entrance[data-film-layout="tablet"] .entrance-stage {min-height:630px}
.marsh-entrance[data-film-layout="tablet"] .entrance-film {top:auto;bottom:0;height:100%;object-fit:cover;object-position:var(--film-position,100%) center}
.marsh-entrance[data-film-layout="tablet"] .entrance-copy {left:auto;right:var(--gutter);top:26%;width:43%;max-width:650px}
.marsh-entrance[data-film-layout="tablet"] .entrance-copy h1,.marsh-entrance[data-film-layout="tablet"] .entrance-copy h2 {font-size:clamp(68px,8.2vw,112px)}
.marsh-entrance[data-film-layout="tablet"] .entrance-shade {opacity:1;background:linear-gradient(270deg,#10251bc4 0%,#14291c70 42%,transparent 76%),linear-gradient(180deg,#0a1c1460,transparent 30%,transparent 72%,#0819106a)}
.marsh-entrance[data-film-layout="tablet"] .entrance-story-shade {display:none}
@media (orientation:portrait) and (min-width:601px) {
  .marsh-entrance[data-film-layout="tablet"] .entrance-film {height:72svh;mask-image:linear-gradient(180deg,transparent,#000 17%,#000)}
  .marsh-entrance[data-film-layout="tablet"] .entrance-copy {top:16%;right:var(--gutter);width:52%;max-width:590px}
  .marsh-entrance[data-film-layout="tablet"] .entrance-copy h1,.marsh-entrance[data-film-layout="tablet"] .entrance-copy h2 {font-size:clamp(70px,10.1vw,112px)}
  .marsh-entrance[data-film-layout="tablet"] .entrance-shade {background:linear-gradient(270deg,#10251b62 0%,transparent 74%),linear-gradient(180deg,transparent 63%,#071d1252)}
  .marsh-entrance[data-film-layout="tablet"] .entrance-actions {flex-wrap:wrap;gap:18px 24px}
}
@media (orientation:landscape) and (max-height:700px) {
  .marsh-entrance[data-film-layout="tablet"] .entrance-stage {min-height:540px}
  .marsh-entrance[data-film-layout="tablet"] .entrance-copy {top:25%}
  .marsh-entrance[data-film-layout="tablet"] .entrance-copy h1,.marsh-entrance[data-film-layout="tablet"] .entrance-copy h2 {font-size:74px}
}
@media (prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto}
  .marsh-entrance {height:auto!important;min-height:0!important}
  .entrance-stage {position:relative}
  .entrance-copy[data-scene-copy] {opacity:0!important;transform:none!important}
  .entrance-copy[data-scene-copy="0"] {opacity:1!important}
  .entrance-controls,.scene-progress {display:none}
  .demo-preview>img,.catalog-photo img {transition:none}
  .demo-preview:hover>img {transform:none}
}

@media (min-width:1367px) {
  .entrance-copy[data-scene-copy="0"] h1 {font-size:clamp(78px,6.4vw,106px)}
}
@media (max-width:600px) {
  .entrance-copy[data-scene-copy="0"] h1 {font-size:clamp(45px,14.8vw,89px)}
}

.marsh-entrance[data-film-layout="tablet"] .entrance-copy[data-scene-copy="0"] h1 {font-size:clamp(45px,7.35vw,103px)}
@media (orientation:portrait) and (min-width:601px) {
  .marsh-entrance[data-film-layout="tablet"] .entrance-copy[data-scene-copy="0"] h1 {font-size:clamp(45px,8.8vw,95px)}
}

/* The pond leaves with the opening copy, so one scroll brings the demo into view. */
.marsh-entrance.pond-intro { height: auto; }
.pond-intro .entrance-stage { position: relative; }
.pond-intro .entrance-actions { flex-wrap: wrap; }
.on-water-demo {
  display: block;
  width: 100%;
  max-height: 78svh;
  aspect-ratio: 16 / 9;
  object-fit: contain;
  background: #101c16;
  scroll-margin-top: 5rem;
}
