/* Framed photographic movement stays inside each composition. */
.header-cart{display:flex;align-items:center;justify-content:center;gap:7px;min-width:44px;height:44px;flex-shrink:0;color:inherit;transition:opacity .2s}.header-cart:hover{opacity:.7}.header-cart>span{font:9px/1 var(--sans)}.header-cart svg{transition:transform .25s}.header-cart:hover svg{transform:translateY(-2px)}
.cart-preview{position:fixed;inset:95px var(--gutter) auto auto;margin:0;width:min(340px,calc(100vw - 32px));padding:32px;background:var(--paper);color:var(--ink);border:1px solid var(--line);box-shadow:0 18px 60px #173e3c25}.cart-preview .eyebrow{font-size:8px;margin-bottom:18px}.cart-preview h2{font:38px/1.05 var(--serif);margin-bottom:16px}.cart-preview>p:last-child{font:11px/1.9 var(--sans);color:var(--muted)}.cart-preview-close{position:absolute;right:12px;top:8px;width:36px;height:36px;font-size:26px}.cart-preview::backdrop{background:transparent}
@media(min-width:761px) and (max-width:1000px){.desktop-nav{gap:16px}.site-header{gap:14px}.header-visit .visit-label-full{display:none}.header-visit .visit-label-short{display:inline}}
@media(max-width:760px){.site-header{gap:8px}.header-cart{min-width:38px;gap:4px}.header-cart svg{width:21px}.cart-preview{top:84px;right:16px;padding:28px}}
@media(max-width:380px){.site-header .header-visit{display:none}.header-cart{margin-left:auto}}
.header-visit .visit-label-full,.header-visit .visit-label-short{font-size:inherit;line-height:inherit;white-space:nowrap}.header-visit .visit-label-short{display:none}
[data-parallax]{overflow:hidden;position:relative}
[data-parallax]>img{transform:translate3d(0,var(--image-drift,0px),0) scale(1.12);transition:filter .4s;will-change:transform}
.collection-photo:hover [data-parallax]>img{transform:translate3d(0,var(--image-drift,0px),0) scale(1.12)}
.image-window{display:block;aspect-ratio:1/1.13}
.intro-image .image-window>img{aspect-ratio:auto;width:100%;height:100%}
.view-image{background:#112e2925}
.collection-photo .circle-arrow{transition:transform .4s,background .4s,color .4s}
.collection-photo:hover .circle-arrow{transform:rotate(45deg)}
.journey .approach-grid{gap:10vw;align-items:start}
.journey .approach-left{position:sticky;top:130px}
.journey .approach-steps{position:relative;--journey-fill:0}
.journey .approach-steps:before,.journey .approach-steps:after{content:'';position:absolute;left:18px;top:22px;height:calc(100% - 142px);width:1px;background:var(--line);z-index:0}
.journey .approach-steps:after{background:#577252;transform:scaleY(var(--journey-fill));transform-origin:top;will-change:transform}
.journey .step{position:relative;border:0;min-height:195px;padding:12px 0 38px;gap:30px;opacity:1}
.journey .step.is-current{opacity:1}
.journey .step-number{position:relative;z-index:1;display:grid;place-items:center;width:37px;height:37px;border-radius:50%;flex-shrink:0;background:var(--paper);border:1px solid var(--line);font:500 10px/1 var(--sans);transition:background .45s,color .45s,border-color .45s}
.journey .step.is-current .step-number{background:var(--ink);color:var(--paper);border-color:var(--ink);box-shadow:0 0 0 8px var(--paper)}
.journey .step h3{padding-top:3px;color:#52665c;transition:color .4s}.journey .step.is-current h3{color:var(--ink)}
.journey .approach-call{position:relative;background:var(--paper);padding-top:24px}
.journey .brand-selection{padding-top:25px;border-top:1px solid var(--line)}
.design-edit{background:#193e3c;color:var(--paper);padding-top:90px;padding-bottom:90px}
.edit-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px}
.edit-heading .eyebrow{color:#c9d3b2;margin-bottom:26px}
.edit-heading .display{font-size:clamp(54px,5.4vw,96px)}
.edit-heading .display em{color:#c9d3b2}
.edit-heading>p{color:#d2d9c9;font-size:12px;line-height:1.9;margin-bottom:9px;max-width:290px}
.product-choices{display:grid;grid-template-columns:repeat(3,1fr);margin-top:54px;border-top:1px solid #ffffff30}
.product-choice{display:flex;align-items:center;gap:25px;text-align:left;padding:23px 0;border-bottom:1px solid #ffffff30;position:relative;color:#aabdb2;transition:color .3s}
.product-choice:after{content:'';position:absolute;left:0;bottom:-1px;right:30px;height:2px;background:#c9d3b2;transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.product-choice.is-selected{color:var(--paper)}.product-choice.is-selected:after{transform:scaleX(1)}
.choice-number{font:9px/1 var(--sans);letter-spacing:1px}.product-choice>span:nth-child(2){font:36px/1 var(--serif)}
.choice-mark{font-size:25px;margin-left:auto;margin-right:30px;opacity:0;transform:translate(-5px,5px);transition:transform .4s,opacity .4s}.is-selected .choice-mark,.product-choice:hover .choice-mark{opacity:1;transform:none}
.product-panel{display:grid;grid-template-columns:1.16fr 1fr;margin-top:38px;background:var(--paper);color:var(--ink);min-height:610px}
.product-photograph{min-height:100%;background:#7c8271;isolation:isolate}
.product-photograph>img{position:absolute;inset:0;object-position:49% 50%}
.product-photograph:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#102b2675,transparent 32%);pointer-events:none}
.product-photo-caption{position:absolute;z-index:2;bottom:27px;left:30px;right:30px;display:flex;justify-content:space-between;gap:20px;color:var(--paper);font-size:8px;letter-spacing:1.5px}
.product-photo-index{position:absolute;top:18px;left:25px;color:#f4f1e9b0;font:italic 64px/1 var(--serif);mix-blend-mode:normal;z-index:2}
.product-information{padding:43px clamp(28px,3.2vw,58px) 34px}
.product-information>.eyebrow{font-size:8px;letter-spacing:1.4px;color:#5d6e61}
.product-information h3{font-size:clamp(61px,5.4vw,96px);letter-spacing:-2px;margin-top:16px}
.product-type{font-size:10px;letter-spacing:.3px;margin-top:11px;color:#687766}
.product-description{font-size:12px;line-height:1.9;margin-top:24px;max-width:380px;color:var(--muted);min-height:69px}
.product-specs{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:12px;padding:24px 0 22px;margin:26px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.product-specs dt{font-size:7px;letter-spacing:.9px;margin-bottom:8px;white-space:nowrap}.product-specs dd{font:500 23px/1.1 var(--serif);margin:0;white-space:nowrap}.product-specs dd small{font:9px/1 var(--sans);margin-left:2px}
.product-availability{font-size:9px;display:flex;gap:8px;align-items:flex-start;line-height:1.7;margin:20px 0}.product-availability>span{width:5px;height:5px;flex-shrink:0;border-radius:50%;background:#778967;margin-top:5px}
.product-enquire{width:100%;font-size:11px;min-height:52px;padding:14px 20px}
.product-documents{display:flex;justify-content:space-between;gap:15px;margin-top:12px}
.product-documents button,.product-documents a{display:flex;justify-content:space-between;gap:13px;align-items:center;font-size:10px;border-bottom:1px solid var(--line);padding:10px 0;min-height:42px}.product-documents button>span{font-size:20px;line-height:1;transition:transform .3s}.product-documents button[aria-expanded=true]>span{transform:rotate(45deg)}.product-documents a>span{font-size:18px}
.product-note{font-size:8px;line-height:1.7;margin-top:18px;color:#6b7466;max-width:320px}
.technical-panel{background:#e8eadf;color:var(--ink);padding:35px;margin-top:2px}
.technical-toolbar{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:30px}.technical-toolbar h3{font-size:30px;margin-top:9px}.technical-toolbar .eyebrow{font-size:7px}.technical-toolbar>button{display:flex;align-items:center;gap:15px;padding:10px;font-size:10px;flex-shrink:0}.technical-toolbar>button span{font-size:26px}
.technical-document{max-width:760px;margin:0 auto;background:white;box-shadow:0 18px 40px #193e3c0e}.technical-document img{width:100%;height:auto;object-fit:contain}
.technical-footer{display:flex;justify-content:space-between;gap:25px;margin-top:25px;font-size:10px}.technical-footer a{border-bottom:1px solid #9faa98;padding-bottom:6px}.technical-footer a>span{margin-left:30px}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.motion-off [data-parallax]>img{transform:none!important;will-change:auto}.motion-off .journey .step{opacity:1}.motion-off .product-choice:after{transition:none}
@media(min-width:1700px){.product-panel{min-height:760px}.product-information{padding-top:60px}.product-description{font-size:14px}.product-specs{margin-top:36px;padding:30px 0}.product-specs dd{font-size:29px}.product-availability{margin:28px 0;font-size:11px}.product-documents button,.product-documents a{font-size:12px}.product-note{font-size:10px;max-width:380px}}
@media(max-width:1100px){.journey .approach-grid{gap:6vw}.journey .step{gap:22px;min-height:200px}.product-panel{grid-template-columns:1fr 1fr}.product-information{padding:32px 26px}.product-specs{grid-template-columns:1fr 1fr;gap:16px}.product-specs>div:first-child{grid-column:1/-1}.product-specs dd{font-size:26px}.product-description{min-height:90px}.edit-heading{gap:30px}.product-choice{gap:17px}.product-choice>span:nth-child(2){font-size:32px}.choice-mark{margin-right:18px}.product-documents{flex-direction:column;gap:0}.product-documents button,.product-documents a{width:100%;justify-content:space-between}.product-note{font-size:9px}}
@media(max-width:760px){.image-window{aspect-ratio:1/1.05}.journey .approach-left{position:static}.journey .approach-grid{gap:40px}.journey .step{min-height:170px;opacity:1;padding-bottom:32px;gap:22px}.journey .approach-steps:before,.journey .approach-steps:after{height:calc(100% - 130px)}.journey .step h3{font-size:30px}.journey .brand-selection{margin-top:32px}.design-edit{padding-top:60px;padding-bottom:60px}.edit-heading{display:block}.edit-heading .display{font-size:clamp(43px,10.8vw,65px);letter-spacing:-1.1px}.edit-heading .eyebrow{font-size:7px;margin-bottom:22px}.edit-heading>p{font-size:11px;max-width:300px;margin-top:25px}.edit-heading>p br{display:none}.product-choices{margin-top:33px;gap:12px}.product-choice{gap:8px;display:block;padding:16px 0}.choice-number{font-size:7px;display:block;margin-bottom:10px}.product-choice>span:nth-child(2){font-size:27px}.choice-mark{display:none}.product-choice:after{right:0}.product-panel{grid-template-columns:1fr;margin-top:24px}.product-photograph{height:420px;min-height:0}.product-photograph>img{object-position:48% 50%}.product-photo-index{font-size:52px;left:21px}.product-photo-caption{left:21px;right:21px;bottom:23px;font-size:7px;letter-spacing:1px}.product-information{padding:32px 25px}.product-information h3{font-size:66px;margin-top:12px}.product-type{font-size:10px}.product-description{font-size:11px;min-height:0;margin-top:20px}.product-specs{grid-template-columns:1.5fr 1fr 1fr;gap:9px;margin-top:22px;padding:22px 0}.product-specs>div:first-child{grid-column:auto}.product-specs dt{font-size:6px;letter-spacing:.5px}.product-specs dd{font-size:21px}.product-specs dd small{font-size:8px}.product-documents{flex-direction:row;gap:17px}.product-documents button,.product-documents a{font-size:9px;gap:8px;width:auto}.product-note{font-size:8px}.technical-panel{padding:22px 16px}.technical-toolbar{gap:15px;align-items:flex-start;margin-bottom:23px}.technical-toolbar h3{font-size:28px}.technical-toolbar .eyebrow{font-size:6px;max-width:150px}.technical-toolbar>button{padding:0;font-size:9px;gap:8px}.technical-footer{flex-direction:column;gap:16px;font-size:9px}.technical-footer a{align-self:flex-start}.technical-document{box-shadow:none}}
@media(max-width:380px){.product-choice>span:nth-child(2){font-size:24px}.product-photograph{height:365px}.product-information{padding:26px 20px}.product-information h3{font-size:57px}.product-specs{grid-template-columns:1fr 1fr;gap:18px}.product-specs>div:first-child{grid-column:1/-1}.product-documents{flex-direction:column;gap:0}.product-documents button,.product-documents a{font-size:10px;width:100%}.journey .step{gap:16px}.journey .step h3{font-size:27px}}
@media(prefers-reduced-motion:reduce){[data-parallax]>img{transform:none!important;will-change:auto}.journey .step{opacity:1}.journey .approach-steps:after{transform:none}.product-choice:after{transition:none}}
@media(max-width:760px){.header-visit .visit-label-full{display:none}.header-visit .visit-label-short{display:inline}.header-visit{font-size:11px;gap:12px}}
@media(max-width:380px){.header-visit{font-size:10px;gap:9px}.site-header{gap:8px}}
