.kit-visual{display:block;width:100%;padding:0;text-align:left}.kit-visual img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.kit-visual:hover img{transform:scale(1.04)}.kit-visual.action img{object-fit:contain;background:#fff}.kit-visual.drone img{object-fit:cover}.image-arrow{position:absolute;bottom:18px;right:18px;background:var(--cream);border-radius:50%;width:39px;height:39px;display:grid;place-items:center;font-size:1.2rem}.title-button{font:inherit;letter-spacing:inherit;color:inherit;text-align:left;background:none;padding:0}.card-content>p{min-height:48px}.card-bottom{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid var(--line);padding-top:16px}.card-bottom b{display:block;font-size:.96rem}.card-bottom small{color:var(--muted);font-size:.75rem}.view-button{background:none;color:var(--green);font-size:.83rem;font-weight:700;min-height:44px;padding:0;white-space:nowrap}.island-strip{display:flex;justify-content:space-between;align-items:center;padding:45px 7%;background:#e5b382;color:#344339;gap:25px}.island-strip p{font:500 2.25rem 'Manrope',sans-serif;letter-spacing:-.04em;line-height:1.2;margin:0}.island-strip span{font-size:.7rem;letter-spacing:.16em}.catalogue-tools{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{border:1px solid #c9d0c6;color:var(--ink);background:transparent;border-radius:24px;padding:9px 18px;min-height:44px;font-size:.85rem}.filters button.active{background:var(--green);color:white;border-color:var(--green)}.sample-label{font-size:.63rem;letter-spacing:.1em;color:var(--muted)}.gear-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.gear-grid .kit-visual{height:245px}.how-section{background:#dfeae0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.steps article{border-top:1px solid #a6bcae;padding-top:25px}.steps article>span{font:italic 2.8rem var(--serif);color:#577366;display:block;margin-bottom:30px}.steps p{color:#536c5f;font-size:.95rem;margin-bottom:0}.faq-section{display:grid;grid-template-columns:1fr 1.35fr;gap:70px}.muted{color:var(--muted)}.faq-section .muted{margin-top:25px}.faq-list details{border-bottom:1px solid var(--line);padding:20px 0}.faq-list details:first-child{padding-top:0}.faq-list summary{cursor:pointer;list-style:none;font-weight:500;position:relative;padding:5px 30px 5px 0;font-size:1rem}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:3px;font-size:1.3rem;top:0}.faq-list details[open] summary:after{content:'−'}.faq-list p{color:var(--muted);font-size:.94rem;margin:13px 20px 0 0}.closing{text-align:center;padding:80px 5%;color:#fff8e9;background:linear-gradient(#133f37e6,#133f37e6),url('assets/bali-hero.jpg') center 70%/cover}.closing h2{font-size:clamp(3.5rem,6vw,5.8rem);margin-bottom:30px}.closing h2 em{color:#f0ba81}.closing .eyebrow{color:#ddcda6}footer{padding:45px 7% 25px;display:flex;flex-wrap:wrap;align-items:center;gap:20px 35px}footer>p{font-size:.9rem;color:var(--muted);margin:0}footer>div{margin-left:auto;display:flex;align-items:center;gap:25px;font-size:.85rem}.footer-link{font:inherit;color:inherit;background:none;padding:0;min-height:44px}footer>small{border-top:1px solid var(--line);padding-top:20px;width:100%;font-size:.72rem;color:var(--muted)}dialog{border:0;background:var(--cream);color:var(--ink);padding:0;max-width:1000px;width:90vw;max-height:90svh;border-radius:13px;box-shadow:0 20px 80px #102e3440}dialog::backdrop{background:#102d29a6;backdrop-filter:blur(5px)}body:has(dialog[open]){overflow:hidden}.close-button{position:sticky;top:14px;margin:14px 14px -56px auto;display:block;border-radius:50%;background:var(--cream);color:var(--ink);width:42px;height:42px;font-size:1.7rem;line-height:1;z-index:3;box-shadow:0 2px 15px #0001}#detail-content{display:grid;grid-template-columns:1fr 1.1fr}.detail-image{background:#e9e5da;position:relative;min-height:450px}.detail-image img{width:100%;height:100%;object-fit:contain;max-height:800px}.detail-image span{position:absolute;bottom:18px;left:20px;right:20px;background:#fff9edeb;padding:6px 10px;font-size:.72rem;border-radius:3px;text-align:center}.detail-body{padding:55px 38px 35px}.detail-body h2{font-size:2.3rem;margin-bottom:20px}.detail-body>p{color:var(--muted);font-size:.94rem}.detail-body h3{font-size:1.12rem;margin-top:25px}.detail-body .detail-price{font-size:1.45rem;font-weight:700;color:var(--ink)}.detail-price small{font-size:.8rem;font-weight:400}.full{width:100%}.contents-list{list-style:none;padding:0;font-size:.93rem;display:grid;grid-template-columns:1fr 1fr;gap:10px}.contents-list li{border-bottom:1px solid var(--line);padding-bottom:7px}.detail-note{background:#e7ecdf;padding:15px;border-radius:5px}.rental-dialog{max-width:660px}.rental-inner{padding:45px}.rental-inner h2{font-size:2.6rem;margin-bottom:15px}.rental-inner>.eyebrow{margin-bottom:12px}.rental-item{display:grid;grid-template-columns:65px 1fr auto;gap:16px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}.rental-item img{width:65px;height:70px;object-fit:cover;border-radius:5px}.rental-item h3{font-size:1rem;margin:0}.rental-item p{font-size:.78rem;margin:2px 0;color:var(--muted)}.remove-button{font-size:.75rem;padding:0;background:none;text-decoration:underline;color:#885231;min-height:30px}.quantity{display:flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:4px}.quantity button{background:none;color:var(--ink);height:40px;width:32px;font-size:1.1rem}.quantity span{font-size:.86rem;min-width:16px;text-align:center}fieldset{border:0;padding:0;margin:30px 0 20px}legend{font-family:'Manrope',sans-serif;font-size:1.15rem;font-weight:700;padding:0;margin-bottom:15px}label{display:block;font-size:.88rem;margin-bottom:15px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}input,select,textarea{display:block;border:1px solid #c8d1c3;background:#fffdf6;color:var(--ink);padding:12px;border-radius:4px;width:100%;min-width:0;margin-top:7px;font-size:1rem}textarea{resize:vertical}.field-note{font-size:.76rem;line-height:1.5;color:var(--muted);margin:10px 0}.center{text-align:center}.error{color:#a12e19;font-size:.85rem}.error:empty{display:none}.total-box{background:#e6ebdf;padding:20px;border-radius:6px}.total-box>div{display:flex;justify-content:space-between;gap:15px;margin-bottom:10px;font-size:.88rem}.total-box .total-final{border-top:1px solid #bfcbb6;padding-top:15px;margin-top:15px;font-size:1rem}.total-box .field-note{margin-bottom:0}.empty{text-align:center;padding:45px 20px;background:#edeedf;border-radius:6px}.empty p{color:var(--muted)}[hidden]{display:none!important}#enquiry-result{padding-top:35px}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#e9edde;padding:22px;font: .88rem/1.8 'DM Sans',sans-serif;border-radius:5px}.credits{padding:60px 40px 35px}.credits h2{margin-bottom:25px}.credits a{text-decoration:underline}.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--green);color:white;border:1px solid #fffa;border-radius:5px;padding:15px 24px;box-shadow:0 4px 25px #18382d30;z-index:50;transition:opacity .2s,transform .2s;max-width:90vw;text-align:center;font-size:.9rem}.toast.visible{opacity:1;transform:translate(-50%,0)}
@media(max-width:950px){.card-bottom{align-items:start;flex-direction:column;gap:0}.catalogue-tools{align-items:start;flex-direction:column;gap:15px}.steps{gap:25px}.faq-section{gap:35px}.detail-body{padding:55px 25px 30px}.contents-list{grid-template-columns:1fr}footer>div{margin-left:0}}
@media(max-width:600px){.gear-grid{grid-template-columns:1fr;gap:20px}.gear-grid .kit-visual{height:280px}.card-bottom{flex-direction:row;align-items:center}.card-content>p{min-height:0}.island-strip{display:block;padding:35px 6%}.island-strip p{font-size:1.9rem}.island-strip span{display:block;margin-top:20px;font-size:.63rem}.filters{gap:6px}.filters button{padding:8px 13px}.steps{grid-template-columns:1fr;gap:30px}.steps article>span{float:left;margin:0 25px 30px 0;font-size:2.3rem}.steps article h3{margin-top:5px}.steps p{clear:both}.faq-section{grid-template-columns:1fr;gap:25px}.faq-list summary{font-size:.95rem}footer{padding:35px 6% 20px;gap:20px}footer>div{width:100%;justify-content:space-between;gap:10px}footer>p{margin-left:auto;font-size:.76rem}dialog{width:95vw;max-height:94svh;border-radius:9px}#detail-content{grid-template-columns:1fr}.detail-image{min-height:0;height:250px}.detail-body{padding:27px 23px}.detail-body h2{font-size:2rem}.rental-inner{padding:50px 22px 25px}.rental-item{grid-template-columns:48px 1fr auto;gap:10px}.rental-item img{width:48px;height:60px}.rental-item h3{font-size:.9rem}.quantity button{width:27px}.quantity{gap:1px}.form-row{gap:10px}.total-box{padding:15px}.total-box>div{font-size:.8rem}.total-box .total-final{font-size:.9rem}.credits{padding:55px 23px 25px}.hero-caption{font-size:.65rem}}
@media(max-width:600px){.toast{bottom:84px;max-width:calc(100% - 28px)}}
/* 9/16 audit fixes: dialog close = opaque sticky bar (content no longer scrolls under a floating ×); thumb-size targets; footer clears the WA pill; icon-only pill on very small phones */
.close-button{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:center;margin:0 0 0 auto;width:56px;height:56px;border-radius:0;background:transparent;color:var(--ink);font-size:1.7rem;line-height:1;box-shadow:none}
.close-button::before{content:'';position:absolute;top:0;bottom:0;right:0;width:200vw;background:var(--cream);border-bottom:1px solid var(--line);z-index:-1}
.close-button:hover{background:transparent;color:var(--green)}
.rental-inner{padding-top:24px}
.quantity button{width:44px;height:44px}.remove-button{min-height:44px;padding:0 4px}
@media(pointer:coarse),(max-width:600px){header nav a{padding:12px 6px}.bag-button{min-height:44px}.text-link{display:inline-block;padding:10px 0}footer>small a{display:inline-block;padding:12px 0}.faq-list summary{min-height:48px;display:flex;align-items:center;justify-content:space-between}.title-button{min-height:44px;display:inline-flex;align-items:center}footer>div a,footer>div .footer-link{padding:11px 8px}}
@media(max-width:600px){footer{padding-bottom:96px}}
@media(max-width:360px){.wa-float{padding:14px;border-radius:50%}.wa-float span{display:none}.wa-float svg{width:24px;height:24px}}
