:root{font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:#f3f4f4;background:#101311;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}.nav{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px clamp(20px,5vw,88px);border-bottom:1px solid #303631}.logo{font-weight:900;letter-spacing:-1px;font-size:25px}.logo span,.eyebrow,em{color:#c8ff58}.nav nav{display:flex;gap:24px;font-size:14px}.nav nav a:hover{color:#c8ff58}.hero{min-height:580px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:80px clamp(20px,8vw,140px);background:radial-gradient(circle at 85% 30%,#314322 0%,transparent 40%),linear-gradient(135deg,#151b16,#101311)}.eyebrow{font-weight:800;letter-spacing:2px;font-size:12px}.hero h1{font-size:clamp(48px,8vw,105px);line-height:1.04;letter-spacing:-.06em;margin:20px 0}.hero em{font-style:normal}.hero p,.section>p:not(.eyebrow){font-size:18px;line-height:1.65;color:#b7c0b7;max-width:660px}.btn{display:inline-block;margin-top:20px;background:#c8ff58;color:#111;font-weight:800;padding:17px 25px;border-radius:6px}.btn:hover{background:#e0ff9d}.section{padding:90px clamp(20px,8vw,140px)}.section h2{font-size:clamp(32px,5vw,56px);letter-spacing:-.045em;margin:14px 0 22px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:36px}.cards article{background:#1b211c;border:1px solid #354034;border-radius:12px;padding:28px;min-height:205px}.cards article span{color:#c8ff58;font-size:14px;font-weight:800}.cards article h3{font-size:23px;margin:20px 0 10px}.cards article p{color:#b7c0b7;line-height:1.55}.steps{background:#151a16}.contact{background:#c8ff58;color:#111}.contact .eyebrow,.contact>p:not(.eyebrow){color:#283521}.contact h2{color:#111}footer{padding:30px clamp(20px,8vw,140px);color:#aeb6ae;font-size:14px}@media(max-width:650px){.nav{align-items:flex-start;flex-direction:column}.nav nav{gap:16px;flex-wrap:wrap}.hero{min-height:520px}.section{padding-top:65px;padding-bottom:65px}}

.catalog-filters{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.filter{border:1px solid #465044;background:#1b211c;color:#f3f4f4;border-radius:999px;padding:12px 16px;cursor:pointer;font:inherit;font-size:14px}.filter.active,.filter:hover{background:#c8ff58;color:#111;border-color:#c8ff58}.filter:focus-visible{outline:3px solid #c8ff58;outline-offset:3px}.catalog-card .empty-status{color:#c8ff58;font-weight:700;font-size:14px}.catalog-note{margin-top:22px;color:#aeb6ae;font-size:14px}.product-price{font-weight:800;color:#c8ff58}

/* Gear4Rent catalogue v2 */
.catalog-section{background:#0d120f;padding-top:100px;padding-bottom:100px}
.catalog-intro{max-width:880px}
.catalog-intro h2{font-size:clamp(38px,5.7vw,72px);line-height:1.05;margin:18px 0 20px}
.catalog-intro em{font-style:normal;color:#c8ff58}
.catalog-intro>p:last-child{color:#aeb9af;font-size:18px;line-height:1.65}
.catalog-filters{display:flex;gap:10px;flex-wrap:wrap;margin:34px 0 26px}
.catalog-filters .filter{appearance:none;background:#1a231b;border:1px solid #3c4b3d;color:#e6eee5;border-radius:999px;padding:12px 20px;font:inherit;font-size:14px;font-weight:650;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.catalog-filters .filter:hover,.catalog-filters .filter.active{background:#c8ff58;color:#101610;border-color:#c8ff58}
.catalog-filters .filter:focus-visible{outline:3px solid #c8ff58;outline-offset:3px}
.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.category-tile{display:flex;min-height:220px;overflow:hidden;background:#171f19;border:1px solid #344237;border-radius:15px;transition:border-color .2s,transform .2s}
.category-tile:hover{border-color:#a6d94a;transform:translateY(-2px)}
.category-tile[hidden]{display:none!important}
.tile-photo{width:43%;min-width:0;position:relative;background:radial-gradient(circle at center,#40523b,#1d281f);overflow:hidden}
.tile-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 75%,rgba(23,31,25,.4))}
.tile-photo img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.75) contrast(1.1);transition:transform .3s}
.category-tile:hover img{transform:scale(1.045)}
.tile-info{flex:1;min-width:0;padding:26px 24px;display:flex;flex-direction:column;align-items:flex-start}
.tile-index{color:#c8ff58;font-size:11px;letter-spacing:1.5px;font-weight:800}
.tile-info h3{font-size:clamp(19px,2vw,27px);line-height:1.18;letter-spacing:-.03em;margin:15px 0 10px}
.tile-info p{font-size:14px;line-height:1.55;color:#b7c3b8;margin:0 0 18px}
.tile-action{margin-top:auto;color:#c8ff58;font-size:13px;font-weight:750}
.catalog-note{margin-top:22px!important;color:#94a396!important;font-size:13px!important}
@media(max-width:950px){.category-grid{grid-template-columns:1fr}.category-tile{min-height:195px}.tile-photo{width:37%}}
@media(max-width:520px){.category-tile{min-height:160px}.tile-photo{width:37%}.tile-info{padding:18px 15px}.tile-info h3{font-size:19px;margin:10px 0 8px}.tile-info p{font-size:12px;margin-bottom:12px}.tile-action{font-size:12px}.catalog-section{padding-top:65px;padding-bottom:65px}}

/* Process of rental: connected icon cards */
.steps{background:linear-gradient(145deg,#131a15,#101712);overflow:hidden}
.steps .process-lead{max-width:660px;color:#b7c0b7;font-size:17px;line-height:1.6;margin:0}
.process-flow{display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr) 44px minmax(0,1fr);align-items:center;gap:0;margin-top:42px}
.process-card{height:100%;min-height:280px;padding:30px 26px;background:#1a241c;border:1px solid #3b503d;border-radius:16px;position:relative;box-shadow:0 12px 40px rgba(0,0,0,.13)}
.process-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:20px}
.process-icon{display:grid;place-items:center;width:92px;height:92px;border-radius:18px;background:#283c29;color:#c8ff58}
.process-icon svg{width:58px;height:58px}
.process-number{font-size:13px;font-weight:900;letter-spacing:2px;color:#a5d54e}
.process-card h3{font-size:clamp(20px,1.7vw,27px);line-height:1.2;margin:0 0 13px}
.process-card p{font-size:15px;line-height:1.6;color:#b7c7b9;margin:0}
.process-arrow{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;color:#c8ff58}
.process-arrow svg{width:48px;height:26px;filter:drop-shadow(0 0 6px rgba(200,255,88,.25))}
@media(max-width:950px){.process-flow{grid-template-columns:minmax(0,1fr);gap:0}.process-card{min-height:0;padding:25px}.process-arrow{height:54px;transform:rotate(90deg)}.process-top{margin-bottom:15px}}
@media(max-width:520px){.process-icon{width:76px;height:76px}.process-icon svg{width:49px;height:49px}.steps .process-lead{font-size:15px}}

/* Rental process v4 — spacious visual journey */
.steps{background:#121914;padding-top:105px;padding-bottom:105px}
.steps h2{max-width:900px;font-size:clamp(36px,5.3vw,68px);line-height:1.1;letter-spacing:-.05em;margin-bottom:16px}
.steps h2 em{font-style:normal;color:#c8ff58}
.steps .process-lead{font-size:18px;color:#b8c5b9}
.process-flow{grid-template-columns:minmax(0,1fr) 68px minmax(0,1fr) 68px minmax(0,1fr);align-items:start;gap:12px;margin-top:56px}
.process-card{background:transparent;border:0;box-shadow:none;border-radius:0;padding:0;min-height:0;text-align:left}
.process-top{flex-direction:column;align-items:flex-start;gap:24px;margin-bottom:19px}
.process-icon{height:106px;width:106px;border-radius:50%;background:#233428;border:1px solid #426449;box-shadow:inset 0 0 0 8px rgba(200,255,88,.035);color:#c8ff58}
.process-icon svg{width:56px;height:56px}
.process-number{font-size:11px;letter-spacing:2.2px;color:#c8ff58}
.process-card h3{font-size:clamp(21px,2.2vw,30px);line-height:1.16;margin:0 0 12px;letter-spacing:-.035em}
.process-card p{font-size:15px;line-height:1.65;color:#aebfb0;max-width:290px}
.process-arrow{margin-top:39px;height:28px;color:#9bca55}
.process-arrow svg{width:60px;height:25px;filter:none}
.process-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:#c8ff58;color:#101710;border-radius:9px;padding:16px 22px;font-weight:800;margin-top:48px;transition:background .15s,transform .15s}
.process-cta:hover{background:#e0ff9d;transform:translateY(-2px)}
.process-cta:focus-visible{outline:3px solid white;outline-offset:3px}
.steps .process-disclaimer{color:#8fa091;font-size:12px;line-height:1.5;margin-top:16px;max-width:560px}
@media(max-width:950px){.process-flow{grid-template-columns:minmax(0,1fr);gap:0;margin-top:38px}.process-card{display:grid;grid-template-columns:90px minmax(0,1fr);column-gap:22px;align-items:start;padding:0;min-height:0}.process-top{grid-row:1 / span 2;grid-column:1;gap:10px;margin:0}.process-icon{height:80px;width:80px}.process-icon svg{height:44px;width:44px}.process-number{position:relative;margin-left:8px}.process-card h3{grid-column:2;grid-row:1;margin:7px 0 9px}.process-card p{grid-column:2;grid-row:2;max-width:520px}.process-arrow{height:42px;justify-content:flex-start;margin:6px 0 8px 30px;transform:none}.process-arrow svg{width:30px;transform:rotate(90deg)}.process-cta{margin-top:32px}}
@media(max-width:520px){.steps{padding-top:70px;padding-bottom:70px}.process-card{grid-template-columns:72px minmax(0,1fr);column-gap:16px}.process-icon{width:68px;height:68px}.process-icon svg{width:38px;height:38px}.process-card h3{font-size:21px;margin-top:2px}.process-card p{font-size:14px}.process-arrow{margin-left:22px}.process-cta{width:100%}.steps .process-lead{font-size:16px}}

/* Rental journey v5: translucent icon art integrated into each card */
.process-flow{grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr) 36px minmax(0,1fr);gap:0;align-items:stretch;margin-top:48px}
.process-card{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;min-height:305px;padding:28px 27px 30px;border:1px solid #33483a;border-radius:18px;background:linear-gradient(145deg,#1c2a20 0%,#18221b 70%,#151f18 100%);box-shadow:none}
.process-card::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(17,27,19,.88),transparent 70%)}
.process-watermark{position:absolute;z-index:-2;top:0;right:-10%;width:95%;height:90%;display:flex;align-items:center;justify-content:center;color:#a6ef70;opacity:.16;transform:rotate(-9deg);pointer-events:none}
.process-watermark svg{width:100%;height:100%;max-width:290px;max-height:290px;stroke-width:2.3}
.process-number{position:relative;z-index:1;display:inline-flex;align-self:flex-start;color:#c8ff58;font-size:12px;font-weight:850;letter-spacing:2px}
.process-copy{position:relative;z-index:1;margin-top:auto}
.process-card h3{font-size:clamp(22px,2.1vw,28px);line-height:1.18;margin:0 0 12px;color:#fff;letter-spacing:-.035em}
.process-card p{font-size:14px;line-height:1.65;color:#c3d1c5;max-width:290px}
.process-arrow{align-self:center;margin:0;z-index:2;display:grid;place-items:center;height:46px;width:46px;transform:translateX(-5px);color:#d3ff76;background:#25372a;border:1px solid #50704a;border-radius:50%;box-shadow:0 0 0 5px #121914}
.process-arrow svg{width:25px;height:22px;filter:none}
@media(max-width:950px){.process-flow{grid-template-columns:1fr;gap:0}.process-card{display:flex;min-height:235px;padding:26px 28px;gap:54px}.process-watermark{width:65%;height:100%;right:0;top:0}.process-card h3,.process-card p,.process-number{grid-column:auto;grid-row:auto}.process-arrow{width:44px;height:44px;margin:-5px auto;transform:rotate(90deg)}.process-arrow svg{width:24px;transform:none}}
@media(max-width:520px){.process-card{min-height:225px;padding:24px 22px;gap:50px}.process-card h3{font-size:23px}.process-card p{font-size:14px}.process-watermark{width:78%;right:-8%}.process-arrow{margin:-5px auto}}

/* v6: restore the clear boxed process layout */
.process-flow{display:grid;grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr) 36px minmax(0,1fr);gap:0;align-items:stretch}
.process-card{display:flex;flex-direction:column;justify-content:flex-start;min-height:295px;padding:29px;background:#1a241c;border:1px solid #3b503d;border-radius:20px;box-shadow:none;overflow:hidden;isolation:auto}
.process-card::after{display:none}
.process-icon{position:static;transform:none;opacity:1;pointer-events:none;width:94px;height:94px;min-height:94px;display:grid;place-items:center;background:#293c2c;border:0;border-radius:19px;color:#c8ff58;box-shadow:none}
.process-icon svg{width:57px;height:57px;max-width:none;max-height:none;stroke-width:3;filter:none}
.process-number{position:absolute;top:32px;right:25px;font-size:12px;letter-spacing:2px}
.process-copy{position:static;margin-top:34px}
.process-card h3{font-size:clamp(21px,2vw,27px);margin:0 0 14px}
.process-card p{font-size:15px;line-height:1.6}
.process-arrow{align-self:center;transform:translateX(-5px);margin:0}
@media(max-width:950px){.process-flow{grid-template-columns:1fr}.process-card{display:flex;min-height:260px;padding:26px}.process-icon{width:80px;height:80px;min-height:80px}.process-icon svg{width:48px;height:48px}.process-copy{margin-top:25px}.process-arrow{margin:-5px auto;transform:rotate(90deg)}.process-number{top:28px;right:26px}}
@media(max-width:520px){.process-card{min-height:240px;padding:23px}.process-icon{width:76px;height:76px;min-height:76px}.process-icon svg{width:46px;height:46px}.process-copy{margin-top:24px}.process-number{top:26px;right:22px}}


/* Nested catalogue: products belong inside the existing instruments category */
.category-tile:has(.category-products){flex-wrap:wrap}
.category-tile:has(.category-products)>.tile-photo{height:220px}
.category-tile:has(.category-products)>.tile-info{min-height:220px}
.category-products{flex:0 0 100%;width:100%;border-top:1px solid #344237}
.subcategory>summary{cursor:pointer;padding:18px 24px;color:#c8ff58;font-weight:800;list-style-position:inside}
.subcategory>summary:focus-visible{outline:2px solid #c8ff58;outline-offset:-3px}
.subcategory-count{float:right;font-size:12px;color:#b7c3b8;font-weight:500}
.subcategory-products{padding:0 18px 18px}
.catalog-product{display:grid;grid-template-columns:minmax(135px,35%) 1fr;gap:20px;background:#101711;border:1px solid #344237;border-radius:12px;overflow:hidden}
.catalog-product-photo{background:#fff;min-height:290px}
.catalog-product-photo img{display:block;width:100%;height:100%;object-fit:contain}
.catalog-product-info{padding:20px 18px 20px 0}
.catalog-product-info h4{font-size:22px;margin:12px 0}
.catalog-product-info p{color:#b7c3b8;font-size:14px;line-height:1.6}
.catalog-product-info .product-price{color:#c8ff58}
.catalog-product-info details{font-size:13px;color:#e8eee8}
.catalog-product-info summary{cursor:pointer}
@media(max-width:520px){.catalog-product{grid-template-columns:1fr}.catalog-product-photo{height:280px}.catalog-product-info{padding:0 16px 18px}.subcategory>summary{padding:16px}}


/* Accessible interactive category navigation */
.category-grid>.category-tile{cursor:pointer}
.category-grid>.category-tile:focus-visible{outline:3px solid #c8ff58;outline-offset:4px}
.category-grid>.category-tile[aria-expanded="true"]{border-color:#c8ff58}
.catalog-category-panel{margin-top:24px;padding:28px;background:#171f19;border:1px solid #344237;border-radius:16px;scroll-margin-top:24px}
.catalog-category-panel[hidden]{display:none}
.catalog-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:16px}
.catalog-panel-heading h3{font-size:clamp(23px,3vw,34px);margin:0}
.catalog-back{background:#c8ff58;border:0;border-radius:8px;padding:12px 17px;color:#111;font:inherit;font-weight:750;cursor:pointer}
.catalog-subcategory-list{display:grid;gap:10px}
.catalog-subcategory-list>.subcategory{background:#111812;border:1px solid #344237;border-radius:12px;overflow:hidden}
.catalog-subcategory-list>.subcategory>summary{padding:19px 20px}
.catalog-empty{padding:10px 20px 20px;color:#b7c3b8}
.catalog-subcategory-list .subcategory-products{padding:0 16px 16px}
@media(max-width:520px){.catalog-category-panel{padding:15px}.catalog-panel-heading{align-items:flex-start}.subcategory-count{float:none;display:block;margin-top:5px}}


/* Reusable product photo gallery */
.catalog-product-photo{background:#f5f5f5;min-height:0}
.product-gallery{width:100%;display:flex;flex-direction:column;gap:10px;padding:12px}
.gallery-main{appearance:none;display:grid;place-items:center;border:0;background:white;width:100%;height:340px;cursor:zoom-in;padding:10px;border-radius:8px}
.gallery-main img{width:100%;height:100%;object-fit:contain;filter:none}
.gallery-controls{display:flex;align-items:center;justify-content:space-between;color:#242924;font-weight:750}
.gallery-controls button{background:#e6e9e6;border:1px solid #c6cfc6;border-radius:6px;min-width:42px;min-height:36px;font-size:25px;cursor:pointer}
.gallery-controls button:disabled{opacity:.35;cursor:default}
.gallery-thumbnails{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 8px}
.gallery-thumb{background:#fff;border:2px solid transparent;border-radius:7px;flex:0 0 62px;height:65px;padding:4px;cursor:pointer}
.gallery-thumb.active{border-color:#567e12}
.gallery-thumb img{width:100%;height:100%;object-fit:contain;filter:none}
.gallery-placeholder{padding:80px 15px;color:#333;text-align:center}
.gallery-lightbox{border:0;border-radius:12px;background:#111711;color:white;width:min(96vw,1150px);max-width:1150px;max-height:96vh;padding:16px}
.gallery-lightbox::backdrop{background:rgba(0,0,0,.88)}
.lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;padding:0 5px 10px}
.lightbox-close{border:0;background:transparent;color:#fff;font-size:34px;cursor:pointer}
.lightbox-stage{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px}
.lightbox-stage img{width:100%;height:min(78vh,750px);object-fit:contain;background:#fff;border-radius:6px}
.lightbox-prev,.lightbox-next{border:0;border-radius:6px;background:#283b29;color:#c8ff58;font-size:32px;min-height:56px;cursor:pointer}
.gallery-main:focus-visible,.gallery-thumb:focus-visible,.gallery-controls button:focus-visible,.gallery-lightbox button:focus-visible{outline:3px solid #c8ff58;outline-offset:2px}
@media(max-width:520px){.gallery-main{height:290px}.lightbox-stage{grid-template-columns:28px minmax(0,1fr) 28px;gap:3px}.lightbox-prev,.lightbox-next{font-size:24px}.gallery-lightbox{padding:8px}}

.rental-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:900px;margin-top:28px}.rental-form label{display:flex;flex-direction:column;gap:8px}.rental-form input,.rental-form select,.rental-form textarea{background:#1c241e;color:white;border:1px solid #50604e;border-radius:6px;padding:12px;width:100%;font:inherit}.rental-wide{grid-column:1/-1}.rental-form button{border:0;cursor:pointer;width:max-content}#rental-estimate{padding:16px;background:#1c2a1c;color:#c8ff58}#rental-result[hidden]{display:none}@media(max-width:650px){.rental-form{grid-template-columns:1fr}}


/* Three-step rental journey: keep the original cards and arrows, use photographic backdrops. */
.steps .process-card{position:relative;isolation:isolate;overflow:hidden;background:#1a241c;border:1px solid #3b503d;border-radius:16px;padding:30px 26px;min-height:290px;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 12px 40px rgba(0,0,0,.13)}
.steps .process-card::before{content:"";position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;opacity:.34}
.steps .process-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(16,23,18,.38),rgba(16,23,18,.93) 78%)}
.steps .process-card:nth-of-type(1)::before{background-image:url("https://images.unsplash.com/photo-1736102790530-7c08d19911d4?auto=format&fit=crop&w=1000&q=75")}
.steps .process-card:nth-of-type(2)::before{background-image:url("https://images.unsplash.com/photo-1503506870038-6fdbcb0ea01a?auto=format&fit=crop&w=1000&q=75")}
.steps .process-card:nth-of-type(3)::before{background-image:url("https://www.bestcarton.com/item/0268-4.jpg")}
.steps .process-card .process-number{position:absolute;top:29px;right:27px;margin:0;color:#c8ff58}
.steps .process-card .process-copy{margin:0;position:relative}
.steps .process-card h3{color:#fff}
.steps .process-card p{color:#d1ddd1}
@media(max-width:950px){.steps .process-card{min-height:250px;padding:26px}.steps .process-arrow{margin:0 auto;transform:rotate(90deg);height:48px;justify-content:center}}
@media(max-width:520px){.steps .process-card{min-height:240px;padding:22px}.steps .process-card .process-number{top:23px;right:22px}}


/* Ensure photo layers paint above card background, with text on top. */
.steps .process-card::before{z-index:0;opacity:.52}
.steps .process-card::after{z-index:1;background:linear-gradient(180deg,rgba(16,23,18,.12),rgba(16,23,18,.88) 82%)}
.steps .process-card .process-number,.steps .process-card .process-copy{z-index:2}
.steps .process-card:nth-of-type(1)::before{background-image:url("https://images.unsplash.com/photo-1519389950473-47ba0277781c?auto=format&fit=crop&w=1100&q=85")}
.steps .process-card:nth-of-type(2)::before{background-image:url("https://images.unsplash.com/photo-1503506870038-6fdbcb0ea01a?auto=format&fit=crop&w=1100&q=85")}
.steps .process-card:nth-of-type(3)::before{background-image:url("https://images.unsplash.com/photo-1607082348824-0a96f2a4b9da?auto=format&fit=crop&w=1100&q=85")}

/* Approved full-width Gear4Rent three-step artwork */
.steps{padding-top:32px;padding-bottom:72px}
.steps .process-approved-image{display:block;width:100%;height:auto;max-width:100%;border:0;border-radius:0}
.steps .process-cta{margin-top:22px;margin-left:0}
@media(max-width:700px){.steps{padding-top:24px;padding-bottom:48px}.steps .process-approved-image{width:100%;height:auto}}


/* High-contrast outlined rental form actions */
#rental-form button.btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:15px 24px;background:#101810;color:#c8ff58;border:2px solid #c8ff58;border-radius:9px;box-shadow:0 0 0 2px rgba(200,255,88,.08),0 8px 24px rgba(0,0,0,.25);font-weight:800;font-size:16px;line-height:1.3;opacity:1;visibility:visible;transition:background .2s,color .2s,box-shadow .2s}
#rental-form button.btn:hover{background:#c8ff58;color:#101810;box-shadow:0 0 0 3px rgba(200,255,88,.24)}
#rental-form button.btn:focus-visible{outline:3px solid #fff;outline-offset:4px}
#rental-form button[type="submit"]{width:100%;margin-top:4px}
#rental-form #rental-send{background:#c8ff58;color:#101810}
#rental-form #rental-send:hover{background:#101810;color:#c8ff58}

/* Clickable Czech date range calendar */
.contact{position:relative}
#rental-form .date-trigger{width:100%;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;padding:12px 15px;background:#efffc7;color:#15220d;border:2px solid #b3ec4d;border-radius:9px;font:inherit;cursor:pointer}
#rental-form .date-trigger:hover,#rental-form .date-trigger[aria-expanded="true"]{border-color:#c8ff58;box-shadow:0 0 0 3px rgba(200,255,88,.25)}
.rental-calendar[hidden]{display:none!important}
.rental-calendar{position:absolute;z-index:200;width:min(360px,calc(100vw - 32px));padding:17px;background:#f0ffd1;color:#18230d;border:2px solid #a3d94b;border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.5)}
.calendar-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:17px;font-size:18px}
.calendar-head>div{display:flex;gap:5px}
.calendar-head button{background:#fff;color:#18230d;border:1px solid #c7d9a9;border-radius:7px;min-width:32px;height:32px;font-size:22px;cursor:pointer}
.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center}
.calendar-weekdays{font-weight:700;margin-bottom:7px}
.calendar-weekdays span{padding:8px 0}
.calendar-days button,.calendar-empty{width:100%;aspect-ratio:1;min-height:36px;display:grid;place-items:center}
.calendar-days button{border:0;border-radius:50%;background:transparent;color:#15220d;font-size:16px;cursor:pointer}
.calendar-days button:hover:not(:disabled){background:#d4f6a3}
.calendar-days button.selected{background:#006dc8;color:white;font-weight:800}
.calendar-days button.in-range{background:#c8ec96;border-radius:6px}
.calendar-days button:disabled{color:#9da68d;cursor:not-allowed}
@media(max-width:500px){.rental-calendar{left:8px!important;width:calc(100% - 16px)}}


/* Rental dates: strong contrast on the lime form background */
#rental-form .date-trigger,
#rental-form input[type="date"]{
  box-sizing:border-box;width:100%;min-height:56px;
  background:#101810!important;color:#fff!important;
  border:2px solid #c8ff58!important;border-radius:10px;
  padding:14px 17px;font:inherit;font-size:18px;font-weight:600;
  box-shadow:0 3px 12px rgba(0,0,0,.18);
  color-scheme:dark;
}
#rental-form .date-trigger{display:flex;align-items:center;justify-content:space-between;text-align:left}
#rental-form .date-trigger span{color:#c8ff58;font-size:22px}
#rental-form .date-trigger:hover,#rental-form .date-trigger:focus-visible,
#rental-form input[type="date"]:focus-visible{outline:3px solid rgba(200,255,88,.4);outline-offset:2px;background:#202b20!important}
#rental-form input[type="date"]::-webkit-calendar-picker-indicator{filter:invert(1);opacity:1;cursor:pointer}
#rental-form input[type="hidden"]{display:none}

/* Two-column rental form with live quote */
.rental-layout{display:grid;grid-template-columns:minmax(0,900px) minmax(280px,390px);align-items:start;gap:36px;margin-top:28px}
.rental-layout .rental-form{margin-top:0;max-width:none}
.rental-price-card{position:sticky;top:24px;background:#101810;color:#fff;border:2px solid #c8ff58;border-radius:16px;padding:30px 26px;box-shadow:0 18px 45px rgba(0,0,0,.2)}
.rental-price-kicker{font-size:12px;letter-spacing:.12em;font-weight:800;color:#c8ff58}
.rental-price-card h3{font-size:25px;line-height:1.2;color:#fff;margin:12px 0 24px}
.rental-price-placeholder{color:#d4decf;line-height:1.65;padding:20px 0}
.rental-price-row{display:flex;justify-content:space-between;align-items:start;gap:16px;padding:14px 0;border-bottom:1px solid #344333}
.rental-price-row span{color:#cad6c5}
.rental-price-row strong{text-align:right;max-width:55%}
.rental-price-total{margin-top:28px;padding:20px 0 8px;display:flex;flex-direction:column;gap:7px}
.rental-price-total span{font-size:14px;color:#c8ff58;font-weight:700}
.rental-price-total strong{font-size:clamp(30px,3vw,44px);line-height:1.1;color:#c8ff58}
.rental-price-note{font-size:13px;line-height:1.55;color:#bdcbb6;margin:25px 0 0}
.rental-price-card [hidden]{display:none!important}
@media(max-width:1050px){.rental-layout{grid-template-columns:minmax(0,1fr);gap:22px}.rental-price-card{position:static;max-width:900px}.rental-price-card h3{font-size:23px}}

/* Consistent rental inputs, aligned desktop pricing and mobile stacking */
#rental-form{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:18px}
#rental-form>label{min-width:0}
#rental-form>label>input:not([type="hidden"]),#rental-form>label>select,#rental-form>label>.date-trigger{
  width:100%!important;max-width:100%;height:56px;min-height:56px;box-sizing:border-box;
  padding:12px 16px;border:2px solid #334433!important;border-radius:9px;
  background:#101810!important;color:#fff!important;font:inherit;font-size:16px;font-weight:500;
  margin:0;box-shadow:none;
}
#rental-form>label>.date-trigger{border-color:#91c83e!important;font-weight:650;box-shadow:0 4px 12px rgba(0,0,0,.12)}
#rental-form>label>select{appearance:auto}
#rental-form>label>input:focus-visible,#rental-form>label>select:focus-visible,#rental-form>label>.date-trigger:focus-visible{outline:3px solid rgba(18,24,15,.5);outline-offset:2px}
#rental-form .rental-wide{grid-column:1/-1}
#rental-form .rental-validation[hidden]{display:none!important}
#rental-form .rental-validation{margin:0;background:#18221b;color:#c8ff58;padding:16px}
.rental-layout{width:100%;max-width:none;grid-template-columns:minmax(0,1.65fr) minmax(290px,.75fr);gap:clamp(20px,3vw,48px)}
.rental-layout .rental-form{width:100%;min-width:0}
.rental-layout .rental-price-card{width:100%;min-width:0;position:sticky;top:28px}
@media(max-width:1050px){.rental-layout{grid-template-columns:minmax(0,1fr)}.rental-layout .rental-price-card{position:static}}
@media(max-width:600px){#rental-form{grid-template-columns:minmax(0,1fr);gap:16px}.rental-layout{gap:24px}.rental-price-card{padding:24px 20px}.rental-price-total strong{font-size:36px}}

/* Gear4Rent contact details */
.footer-contact{display:flex;align-items:center;justify-content:center;gap:clamp(12px,2vw,28px);flex-wrap:wrap;margin-bottom:18px}
.footer-contact a{color:inherit;text-decoration:underline;text-underline-offset:4px}
.footer-contact a:hover{color:#c8ff58}
@media(max-width:600px){.footer-contact{flex-direction:column;gap:10px}}
