:root{--navy:#243b4a;--deep:#172c39;--orange:#df783b;--cream:#f7f3e9;--ink:#263744;--muted:#64717a;--white:#fff;--line:#dedbd1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3,.logo,.footer-logo{font-family:Outfit,sans-serif}h1{font-size:clamp(3.5rem,6.2vw,6.9rem);line-height:.98;letter-spacing:-.055em;margin:24px 0}h2{font-size:clamp(2.6rem,4.1vw,4.6rem);line-height:1.05;letter-spacing:-.045em;margin:16px 0 22px}h2 em,h1 em{font-style:normal;color:var(--orange)}p{line-height:1.75;color:var(--muted)}a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}button{cursor:pointer}.wrap{width:min(1180px,calc(100% - 52px));margin:auto}.site-header{background:var(--deep);color:#fff;position:sticky;top:0;z-index:10}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{font-weight:700;letter-spacing:.08em;font-size:1.04rem;white-space:nowrap}.logo b{color:#f3b487}.logo-mark{display:inline-flex;align-items:center;justify-content:center;border:1.5px solid #f3b487;border-radius:50%;width:36px;height:36px;margin-right:9px;color:#f3b487;font-size:25px}nav{display:flex;align-items:center;gap:31px;font-size:.89rem}nav a:hover,.footer-links a:hover{color:#f3b487}.nav-cta{background:var(--orange);padding:12px 17px;border-radius:4px;font-weight:700}.nav-cta:hover{color:#fff;background:#c9652e}.menu-toggle{display:none;background:none;border:0;color:white;font-size:27px}.hero{padding:75px 0 84px}.hero-grid{display:grid;grid-template-columns:1fr 1.03fr;gap:65px;align-items:center}.eyebrow{font-size:.74rem;letter-spacing:.2em;font-weight:800;color:var(--orange)}.hero-copy>p{font-size:1.08rem;max-width:440px}.hero-actions{display:flex;gap:28px;align-items:center;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:0;border-radius:3px;padding:16px 25px;font-weight:700;font-size:.91rem}.primary{background:var(--orange);color:#fff}.primary:hover{background:#c9652e}.secondary{background:var(--navy);color:#fff}.secondary:hover{background:var(--deep)}.text-link{font-size:.92rem;font-weight:700;border-bottom:1px solid var(--orange);padding-bottom:5px}.hero-note{margin-top:65px;font-size:.83rem;color:var(--muted)}.hero-note span{color:var(--orange);font-size:22px;vertical-align:middle;margin-right:9px}.hero-image{height:530px;position:relative}.hero-image img,.about-image img,.rental-card img{width:100%;height:100%;object-fit:cover;display:block}.hero-image img{border-radius:180px 180px 5px 5px}.image-sticker{position:absolute;bottom:-25px;left:-30px;width:142px;height:142px;background:var(--navy);border-radius:50%;color:white;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.5;font-weight:800;font-size:.78rem;transform:rotate(-10deg)}.image-sticker span{position:absolute;bottom:18px;font-size:20px;color:#f3b487}.intro-strip{background:var(--navy);color:#fff}.strip-inner{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:80px;font-family:Outfit,sans-serif;font-size:clamp(.85rem,1.7vw,1.35rem);font-weight:700;letter-spacing:.06em}.strip-star{color:var(--orange);font-size:30px}.section{padding:100px 0}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.section-top>p{max-width:300px}.rental-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.rental-card{background:white;overflow:hidden;border-radius:4px;box-shadow:0 7px 22px #243b4a0c}.rental-card .photo{height:220px;overflow:hidden}.rental-card img{transition:transform .3s}.rental-card:hover img{transform:scale(1.045)}.card-info{padding:22px 23px 25px}.card-info h3{font-size:1.55rem;margin-bottom:5px}.card-info p{font-size:.88rem;line-height:1.55;min-height:42px}.card-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px}.card-bottom span{font-size:.8rem;color:var(--muted)}.add-btn{border:1px solid var(--navy);background:white;color:var(--navy);border-radius:3px;padding:10px 12px;font-weight:700;font-size:.8rem}.add-btn.selected{background:var(--navy);color:#fff}.rental-footnote{font-size:.81rem;margin-top:24px}.how{background:#e9e8dc}.how h2{margin-bottom:50px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.steps article{border-top:1px solid #c6c7bd;padding-top:22px;position:relative}.step-no{color:var(--orange);font-weight:800;font-size:.85rem}.step-icon{font-size:48px;color:var(--navy);margin:25px 0 12px}.steps h3{font-size:1.65rem;margin-bottom:8px}.steps p{max-width:300px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.about-image{height:490px}.about-image img{border-radius:5px 160px 5px 5px}.about-copy>p{max-width:475px}.values{display:flex;flex-wrap:wrap;gap:12px 22px;font-size:.87rem;font-weight:700;margin:30px 0}.values span{color:var(--navy)}.contact{background:var(--navy);color:#fff}.contact h2{color:#fff}.contact p{color:#cbd4d8}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px;align-items:start}.contact-small{margin-top:35px;color:#d4d8d6;font-size:.85rem}.booking-form{background:var(--cream);padding:35px;color:var(--ink);border-radius:4px}.booking-form h3{font-size:1.8rem;margin:0 0 5px}.booking-form>p{color:var(--muted);font-size:.86rem}.fields.two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.booking-form label{display:block;font-size:.82rem;font-weight:700;margin:17px 0 0}.booking-form label span{font-weight:400}.booking-form input,.booking-form textarea{display:block;margin-top:8px;width:100%;padding:13px;border:1px solid #c9c9c0;border-radius:3px;background:white;color:var(--ink);outline-color:var(--orange)}.booking-form textarea{resize:vertical}.form-submit{margin-top:22px;width:100%}.booking-form .form-status{margin:10px 0 0;color:#a33b26}.booking-form .form-disclaimer{font-size:.75rem;line-height:1.5;margin:12px 0 0}.bottom-cta{text-align:center;padding:80px 0;background:#e9e8dc}.bottom-cta span{color:var(--orange);font-weight:800;font-size:.75rem;letter-spacing:.2em}.bottom-cta h2{margin:14px 0 28px}footer{background:var(--deep);color:#fff;padding:55px 0}.footer-inner{display:flex;justify-content:space-between;gap:25px}.footer-logo{font-weight:700;letter-spacing:.07em}.footer-logo b{color:#f3b487}footer p{font-size:.83rem;color:#a9b9bf;margin:12px 0 0}.footer-links{display:flex;gap:24px;font-size:.84rem}.copyright{font-size:.78rem;color:#a9b9bf}@media(max-width:850px){.hero-grid,.about-grid,.contact-grid{gap:35px}.hero-image{height:420px}.rental-grid{grid-template-columns:repeat(2,1fr)}nav{gap:14px}.nav{gap:10px}.about-image{height:400px}}@media(max-width:680px){.wrap{width:min(100% - 34px,1180px)}.nav{min-height:67px}.menu-toggle{display:block}nav{display:none;position:absolute;top:67px;left:0;right:0;background:var(--deep);padding:18px 24px 24px;flex-direction:column;align-items:stretch}nav.open{display:flex}.hero{padding:50px 0 70px}.hero-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.hero-image{height:370px;margin:18px 0 0 20px}.image-sticker{width:115px;height:115px;left:-20px;font-size:.65rem}.hero-note{margin-top:35px}.strip-inner{flex-wrap:wrap;justify-content:center;padding:22px 0;min-height:0;font-size:.8rem}.section{padding:70px 0}.section-top{display:block}.rental-grid{grid-template-columns:1fr 1fr;gap:13px}.rental-card .photo{height:160px}.card-info{padding:14px}.card-info h3{font-size:1.25rem}.card-info p{font-size:.78rem;min-height:60px}.card-bottom{display:block}.add-btn{margin-top:12px;width:100%}.steps{grid-template-columns:1fr;gap:15px}.steps article{padding-bottom:15px}.step-icon{margin:8px 0}.about-image{height:340px}.booking-form{padding:22px}.footer-inner{flex-direction:column}.footer-links{flex-wrap:wrap}}@media(max-width:380px){.rental-grid{grid-template-columns:1fr}.rental-card .photo{height:200px}.fields.two{grid-template-columns:1fr}}
/* Reservation form enhancements */
.booking-form .form-status {font-weight:600}
.booking-form input:focus-visible,.booking-form textarea:focus-visible{outline:2px solid #c76a3b;outline-offset:2px}
.hidden-field{position:absolute;left:-9999px}
.success-panel{max-width:680px;margin:10vh auto;padding:56px 32px;text-align:center;background:#fff;border-radius:18px}
.success-panel h1{font-size:clamp(2.3rem,6vw,4rem);line-height:1.1}
.success-panel p{margin:24px auto;max-width:480px}
