:root{--red:#e21d2b;--red-dark:#b81320;--ink:#0b0b0c;--panel:#141416;--line:#2a2a2e;--paper:#f3f1ed;--muted:#a6a4a0;--max:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:#fff;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.65;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%}.skip-link{position:fixed;left:1rem;top:-4rem;z-index:100;background:#fff;color:#000;padding:.8rem 1rem}.skip-link:focus{top:1rem}.site-header{position:absolute;inset:0 0 auto;z-index:20;height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.2rem,4vw,4.5rem);border-bottom:1px solid rgba(255,255,255,.16)}.brand,.footer-brand{display:flex;align-items:center;gap:.9rem;line-height:.86;font-family:"Barlow Condensed",sans-serif;letter-spacing:.04em}.brand span:last-child,.footer-brand span:last-child{display:flex;flex-direction:column}.brand strong,.footer-brand strong{font-size:1.06rem}.brand b,.footer-brand b{font-size:1.45rem}.brand-burst{width:40px;height:40px;display:block;background:repeating-conic-gradient(from 0deg,var(--red) 0 3deg,transparent 3deg 15deg);border-radius:50%;position:relative}.brand-burst:after{content:"";position:absolute;inset:13px;border-radius:50%;background:#fff}.site-header nav{height:100%;display:flex;align-items:center;gap:clamp(1.3rem,2.7vw,2.8rem);font-family:"Barlow Condensed",sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.site-header nav a{font-size:.9rem;transition:color .2s}.site-header nav a:hover{color:#ff3d48}.nav-shop{background:var(--red);height:100%;display:flex;align-items:center;padding:0 2rem;margin-right:clamp(-4.5rem,-4vw,-1.2rem);gap:1rem}.menu-toggle{display:none;background:none;border:0;color:white;width:46px;height:46px}.menu-toggle span{display:block;width:26px;height:2px;background:#fff;margin:7px auto}.hero{height:min(920px,100svh);min-height:720px;position:relative;display:flex;align-items:center}.hero>img{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center 62%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.84) 0%,rgba(0,0,0,.42) 52%,rgba(0,0,0,.15)),linear-gradient(0deg,rgba(0,0,0,.82),transparent 42%)}.hero-content{position:relative;z-index:2;width:min(900px,88vw);margin-left:max(6vw,calc((100vw - var(--max))/2));padding-top:3rem}.eyebrow,.section-kicker{font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:.17em;font-weight:600;font-size:.83rem}.eyebrow{display:flex;align-items:center;gap:.8rem}.eyebrow span{width:35px;height:2px;background:var(--red)}h1,h2,h3{font-family:"Barlow Condensed",sans-serif;margin:0;line-height:.88;text-transform:uppercase}h1{font-size:clamp(4.9rem,10.5vw,10rem);letter-spacing:-.045em;max-width:920px}h1 em{font-style:normal;color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.84)}.hero-copy{max-width:610px;font-size:clamp(1rem,1.35vw,1.2rem);margin:2rem 0 2.3rem;color:#e8e7e5}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:1.3rem;min-height:58px;padding:0 1.65rem;font-family:"Barlow Condensed",sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.08em;border:1px solid transparent;cursor:pointer}.button-primary{background:var(--red);color:#fff}.button-primary:hover{background:#fb2635}.button-ghost{border-color:rgba(255,255,255,.55)}.button-ghost:hover{background:#fff;color:#111}.hero-info{position:absolute;z-index:2;bottom:0;left:0;right:0;min-height:112px;border-top:1px solid rgba(255,255,255,.15);display:flex;align-items:center;padding-left:max(6vw,calc((100vw - var(--max))/2));gap:clamp(3rem,8vw,9rem)}.hero-info div{display:flex;flex-direction:column}.hero-info small,footer small{color:#8f8f93;text-transform:uppercase;font-size:.68rem;letter-spacing:.16em}.hero-info strong,.hero-info a{font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:.06em}.scroll-cue{margin-left:auto;width:112px;align-self:stretch;display:grid;place-items:center;border-left:1px solid rgba(255,255,255,.15);font-size:1.5rem}.section{max-width:var(--max);margin:auto;padding:8rem 2rem}.section-kicker{color:var(--red);margin-bottom:3rem}.intro-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:7vw}.intro-grid h2,.section-head h2,.about h2,.rental h2,.contact h2{font-size:clamp(3.3rem,6.3vw,6.4rem);letter-spacing:-.025em}.intro-grid h2 span,.section-head h2 span,.about h2 span,.rental h2 span,.contact h2 span{color:var(--red)}.lead{font-size:clamp(1.15rem,1.8vw,1.45rem);line-height:1.5;color:#f0efed;margin-top:0}.intro-grid>div>p:last-child,.section-head>p,.about-content>p:not(.lead),.rental-box>p:not(.lead){color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:6rem;border:1px solid var(--line)}.service-card{min-height:420px;padding:2.2rem;position:relative;border-right:1px solid var(--line);display:flex;flex-direction:column;transition:background .25s,transform .25s}.service-card:last-child{border:0}.service-card:hover{background:#1a1a1d;transform:translateY(-5px)}.service-card.featured{background:var(--red)}.service-card.featured:hover{background:#ee2533}.card-number{font-size:.73rem;letter-spacing:.12em;color:#85858a}.featured .card-number{color:#fff}.card-icon{font-size:3rem;margin:2.5rem 0 2rem}.service-card h3{font-size:2rem}.service-card p{color:#b9b8b5;line-height:1.65}.service-card.featured p{color:#fff}.service-card a{margin-top:auto;text-transform:uppercase;font-family:"Barlow Condensed";font-weight:700;letter-spacing:.09em;font-size:.85rem;display:flex;justify-content:space-between}.season-banner{max-width:1520px;margin:auto;background:var(--red);padding:clamp(3rem,6vw,6rem) max(2rem,calc((100% - var(--max))/2));display:grid;grid-template-columns:1.2fr 1fr;gap:7vw;align-items:end}.season-banner h2{font-size:clamp(3.5rem,7vw,7.5rem)}.season-banner .eyebrow{display:inline-block}.status-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:white;margin-right:.7rem;box-shadow:0 0 0 7px rgba(255,255,255,.18)}.season-copy p{font-size:1.15rem;margin:0 0 2rem}.button-light{background:#fff;color:#111}.section-head{display:grid;grid-template-columns:1.4fr .6fr;align-items:end;gap:3rem}.gallery{display:grid;grid-template-columns:1.35fr .65fr;grid-template-rows:360px 270px;gap:1rem;margin-top:5rem}.gallery figure{margin:0;position:relative;overflow:hidden}.gallery img{height:100%;object-fit:cover;transition:transform .7s}.gallery figure:hover img{transform:scale(1.035)}.gallery-main{grid-row:1/3}.gallery-main:after,.gallery-side:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.8))}.gallery figcaption{position:absolute;z-index:2;left:2rem;bottom:1.7rem;display:flex;flex-direction:column}.gallery figcaption span{font-size:.7rem;text-transform:uppercase;letter-spacing:.18em;color:#c3c1be}.gallery figcaption b{font-family:"Barlow Condensed";font-size:1.7rem;text-transform:uppercase}.gallery-quote{background:var(--paper);color:#131315;padding:2rem 2.4rem}.quote-mark{font-family:Georgia;font-size:4.5rem;line-height:.6;color:var(--red)}blockquote{font-family:"Barlow Condensed";font-size:clamp(1.55rem,2.1vw,2.1rem);font-weight:600;line-height:1.1;text-transform:uppercase;margin:1rem 0}.gallery-quote p{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em}.about{max-width:1520px;margin:auto;display:grid;grid-template-columns:1fr 1fr;background:var(--paper);color:#111}.about-image{min-height:690px;background:#fff;display:grid;place-items:center;padding:8vw}.about-image img{mix-blend-mode:multiply}.about-content{padding:clamp(4rem,8vw,8rem)}.about-content .lead{color:#171719;margin-top:2.4rem}.about-content>p:not(.lead){color:#5c5b59}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:3rem;padding-top:2rem;border-top:1px solid #cecbc6}.values div{display:flex;flex-direction:column}.values strong{font-family:"Barlow Condensed";text-transform:uppercase;font-size:1.2rem}.values span{font-size:.77rem;color:#777570}.rental{padding-top:8rem;padding-bottom:8rem}.rental-layout{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.rental-box{padding:2.2rem;border-left:3px solid var(--red);background:var(--panel)}.text-link{display:inline-flex;margin-top:1.5rem;color:#fff;text-transform:uppercase;font-weight:600;font-family:"Barlow Condensed";letter-spacing:.1em;gap:2rem}.contact{max-width:1520px;margin:auto;background:#111113;display:grid;grid-template-columns:.85fr 1.15fr}.contact-copy{padding:clamp(4rem,8vw,8rem)}.contact-copy>p{color:var(--muted);max-width:480px;margin:2rem 0}.contact-line{display:flex;flex-direction:column;padding:1.1rem 0;border-top:1px solid var(--line)}.contact-line:last-child{border-bottom:1px solid var(--line)}.contact-line small{font-size:.68rem;color:#8d8d91;text-transform:uppercase;letter-spacing:.16em}.contact-line strong{font-family:"Barlow Condensed";font-size:clamp(1.1rem,1.7vw,1.5rem);font-weight:500}.contact-form{background:var(--paper);color:#111;padding:clamp(3rem,7vw,7rem);display:flex;flex-direction:column;gap:1.4rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.contact-form label{font-family:"Barlow Condensed";text-transform:uppercase;font-weight:700;font-size:.8rem;letter-spacing:.08em}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #aaa6a0;border-radius:0;padding:.9rem 0;font:1rem Inter;text-transform:none;outline:0}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--red)}.contact-form .button{align-self:flex-start;border:0}.form-note{font-size:.75rem;color:#716f6b;margin:0}footer{max-width:var(--max);margin:auto;padding:5rem 2rem 2rem;display:grid;grid-template-columns:1.4fr 1fr .7fr .7fr;gap:3rem}footer>div:not(.footer-brand):not(.footer-bottom){display:flex;flex-direction:column;align-items:flex-start}footer p{margin:.6rem 0;color:#ddd}footer a{color:#bab9b6;margin:.2rem 0;font-size:.9rem}footer a:hover{color:#fff}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);margin-top:2rem;padding-top:1.5rem;display:flex;justify-content:space-between;color:#747478;font-size:.78rem}.footer-brand .brand-burst:after{background:var(--ink)}
@media (max-width:900px){.site-header{height:78px}.menu-toggle{display:block;position:relative;z-index:2}.site-header nav{position:fixed;inset:0;background:#0b0b0cf7;display:flex;flex-direction:column;justify-content:center;height:auto;gap:1.5rem;transform:translateX(100%);transition:transform .3s}.site-header nav.open{transform:none}.site-header nav a{font-size:1.45rem}.nav-shop{height:auto;padding:1rem 2rem;margin:0}.hero{min-height:760px}.hero-content{margin:0 1.5rem}.hero-info{padding:1.3rem 1.5rem;min-height:100px;gap:2rem}.scroll-cue{display:none}.intro-grid,.section-head,.season-banner,.rental-layout{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr}.service-card{border-right:0;border-bottom:1px solid var(--line);min-height:330px}.gallery{grid-template-columns:1fr;grid-template-rows:480px 320px auto}.gallery-main{grid-row:auto}.about{grid-template-columns:1fr}.about-image{min-height:430px;padding:16vw}.contact{grid-template-columns:1fr}footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
@media (max-width:560px){h1{font-size:4.4rem}.hero{min-height:760px}.hero-copy{font-size:.95rem}.hero-actions{display:grid}.hero-info{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.hero-info strong,.hero-info a{font-size:.83rem}.section{padding:5.5rem 1.2rem}.intro-grid h2,.section-head h2,.about h2,.rental h2,.contact h2{font-size:3.35rem}.service-grid{margin-top:3.5rem}.season-banner{padding:4rem 1.2rem}.section-head{gap:1.5rem}.gallery{grid-template-rows:380px 260px auto;margin-top:3rem}.gallery figcaption{left:1.2rem;bottom:1.2rem}.gallery-quote{padding:2rem 1.4rem}.about-image{min-height:300px}.about-content{padding:4.5rem 1.2rem}.values{grid-template-columns:1fr}.contact-copy,.contact-form{padding:4.5rem 1.2rem}.form-row{grid-template-columns:1fr}footer{grid-template-columns:1fr;padding:4rem 1.2rem 1.5rem}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column;gap:1rem}.brand strong{font-size:.88rem}.brand b{font-size:1.22rem}.brand-burst{width:34px;height:34px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* A quiet, scroll-lit fuse follows the outer edge of the story. */
main{position:relative;isolation:isolate}
.fuse{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;overflow:visible}
.fuse path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.fuse-shadow{stroke:#050505;stroke-width:12;opacity:.8}
.fuse-rope{stroke:#665f50;stroke-width:6;stroke-dasharray:3 7;opacity:.76}
.fuse-burned{stroke:#d86730;stroke-width:4;filter:drop-shadow(0 0 5px #ef4b19);opacity:.95}
.fuse-halo{fill:#ff6a1f;opacity:.8}
.fuse-ember{fill:#ff7629;filter:drop-shadow(0 0 7px #ff4b08)}
.fuse-core{fill:#fff3bc}
.fuse.reduced-motion .fuse-halo,.fuse.reduced-motion .fuse-ember,.fuse.reduced-motion .fuse-core{display:none}
@media(max-width:700px){.fuse-shadow{stroke-width:8;opacity:.55}.fuse-rope{stroke-width:4;opacity:.6}.fuse-burned{stroke-width:3;opacity:.8}.fuse-halo{opacity:.45}}

/* Display the site's original logo image without redrawing its lettering or mark. */
.brand-logo{position:relative;display:block;width:230px;height:78px;flex:none;overflow:hidden;background:#fff}
.brand-logo img{position:absolute;left:50%;top:50%;width:252px;height:252px;max-width:none;transform:translate(-50%,-50%);object-fit:contain}
.footer-brand .brand-logo{width:230px;height:78px}
@media(max-width:560px){.brand-logo{width:182px;height:62px}.brand-logo img{width:200px;height:200px}.footer-brand .brand-logo{width:230px;height:78px}.footer-brand .brand-logo img{width:252px;height:252px}}

/* Fine rope and a small, gently flickering burn at its leading edge. */
.fuse-shadow{stroke-width:6;opacity:.6}
.fuse-rope{stroke:#776b56;stroke-width:3;stroke-dasharray:none;opacity:.82}
.fuse-burned{stroke:#c85a28;stroke-width:2.4;filter:drop-shadow(0 0 3px #df481d);opacity:.95}
.fuse-halo{fill:#ff6321;opacity:.66;animation:fuse-glow 1.1s ease-in-out infinite alternate}
.fuse-ember{fill:#ff782d;animation:fuse-pulse .58s ease-in-out infinite alternate}
.fuse-core{fill:#fff1c0}
.fuse-spark{fill:#ffc268;opacity:0;animation:fuse-spark 1.35s ease-out infinite}
.spark-two{animation-delay:.23s;--dx:4px;--dy:-10px}
.spark-three{animation-delay:.52s;--dx:-8px;--dy:2px}
.spark-four{animation-delay:.78s;--dx:7px;--dy:6px}
.spark-five{animation-delay:1.03s;--dx:-2px;--dy:-14px}
.spark-six{animation-delay:.12s;--dx:11px;--dy:-4px;animation-duration:1.7s}
.spark-seven{animation-delay:.68s;--dx:-12px;--dy:-5px;animation-duration:1.6s}
.spark-eight{animation-delay:1.2s;--dx:2px;--dy:-11px;animation-duration:1.8s}
@keyframes fuse-glow{to{opacity:.32;r:16}}
@keyframes fuse-pulse{to{r:4.3;fill:#ffb347}}
@keyframes fuse-spark{15%{opacity:.9}100%{opacity:0;transform:translate(var(--dx,-3px),var(--dy,-8px))}}
.fuse.reduced-motion .fuse-tip{display:none}
@media(max-width:700px){.fuse-shadow{stroke-width:5;opacity:.5}.fuse-rope{stroke-width:2.5}.fuse-burned{stroke-width:2}}
@media(prefers-reduced-motion:reduce){.fuse-tip,.fuse-spark{animation:none!important}}
