/* Hallmark · macrostructure: Workbench · theme: Cobalt · genre: modern-minimal · nav: N3 side-rail · footer: Ft2 inline */
/* Hallmark · pre-emit critique: P4 H4 E4 S5 R5 V4 */
@import url('tokens.css');
*{box-sizing:border-box}html,body{margin:0;overflow-x:clip}body{font:14px/1.7 var(--font-body);color:var(--color-ink);background:var(--color-paper)}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;white-space:nowrap;border:1px solid var(--color-line);border-radius:7px;padding:10px 15px;background:var(--color-surface);color:var(--color-ink)}button:hover{border-color:var(--color-accent);color:var(--color-accent)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}button:active{transform:translateY(1px)}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:var(--color-accent);color:var(--color-surface);border-color:var(--color-accent)}.primary:hover{color:var(--color-surface);filter:brightness(.9)}.shell{display:grid;grid-template-columns:226px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--color-navy);color:var(--color-surface);padding:30px 18px;display:flex;flex-direction:column;gap:28px}.brand{font-size:23px;font-weight:800;letter-spacing:1px}.brand small{display:block;font-size:10px;letter-spacing:2px;color:var(--color-side)}.sidebar nav{display:grid;gap:7px}.sidebar button{text-align:left;background:none;border:0;color:var(--color-side);padding:13px}.sidebar button.active{background:var(--color-accent);color:var(--color-surface)}.sidebar footer{margin-top:auto;color:var(--color-side);font-size:11px}.topbar{padding:16px 32px;background:var(--color-surface);border-bottom:1px solid var(--color-line);display:flex;align-items:center;justify-content:space-between;gap:12px}.topbar span{font-size:12px;color:var(--color-muted)}main{padding:32px;max-width:1550px;margin:auto}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}h1{font-size:28px;letter-spacing:-1px;margin:0;overflow-wrap:anywhere}h2{font-size:17px;margin:0}h3{font-size:16px;margin:0}p{margin:6px 0;color:var(--color-muted)}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--color-accent);margin-bottom:6px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.stat,.panel,.vehicle{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius)}.stat{padding:20px}.stat strong{font-size:34px;display:block;line-height:1.4;letter-spacing:-1px}.stat small{font-size:12px;color:var(--color-muted)}.panel{padding:24px;margin-bottom:22px;min-width:0}.section-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px}.grid-two{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:22px}.badge{display:inline-block;font-size:11px;font-weight:600;padding:3px 9px;border-radius:5px;background:var(--color-blue-soft);color:var(--color-accent);white-space:nowrap}.green{background:var(--color-green-soft);color:var(--color-green)}.orange{background:var(--color-orange-soft);color:var(--color-orange)}.red{background:var(--color-red-soft);color:var(--color-red)}.muted{color:var(--color-muted)}.list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 0;border-top:1px solid var(--color-line)}.list-row small{display:block;color:var(--color-muted)}.notice{padding:13px 18px;background:var(--color-blue-soft);color:var(--color-accent);border-radius:7px;margin-bottom:22px;font-size:12px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:11px;color:var(--color-muted);font-weight:500;background:var(--color-paper)}td,th{padding:15px 12px;border-bottom:1px solid var(--color-line)}td strong,td small{display:block}td small{color:var(--color-muted);font-size:11px}.timeline{min-width:780px;table-layout:fixed}.timeline th:first-child{width:180px}.timeline td{padding:9px 5px;height:65px;border-right:1px solid var(--color-line)}.timeline td:first-child{padding-left:12px}.slot{font-size:10px;border-radius:4px;padding:10px 5px;background:var(--color-blue-soft);color:var(--color-accent);text-align:center}.slot.prep{background:var(--color-orange-soft);color:var(--color-orange)}.slot.maintenance{background:var(--color-red-soft);color:var(--color-red)}.legend{display:flex;gap:15px;flex-wrap:wrap;font-size:11px;color:var(--color-muted)}.vehicles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.vehicle{overflow:hidden}.vehicle-art{height:125px;background:var(--color-paper);display:flex;align-items:center;justify-content:center;color:var(--color-ink)}.vehicle-art svg{width:190px;height:95px}.vehicle-body{padding:22px}.vehicle-body strong{font-size:20px}.vehicle-body button{margin-top:18px;width:100%}.filters{display:flex;gap:12px;margin-bottom:22px;flex-wrap:wrap}.filters input{max-width:320px}input,select{min-width:0;width:100%;border:1px solid var(--color-line);padding:11px;border-radius:6px;background:var(--color-surface);color:var(--color-ink)}label{display:block;font-size:12px;color:var(--color-muted)}label input,label select{display:block;margin-top:5px}form{display:grid;gap:16px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}dialog{border:1px solid var(--color-line);border-radius:14px;padding:28px;width:min(560px,92vw);max-height:90vh;color:var(--color-ink);background:var(--color-surface)}dialog::backdrop{background:var(--color-overlay)}.quote{background:var(--color-paper);padding:18px;border-radius:8px}.quote strong{font-size:25px}.error{color:var(--color-red);font-size:12px}.public-header{display:flex;justify-content:space-between;align-items:center;padding:22px 5%;background:var(--color-surface);gap:12px}.public-main{max-width:1150px}.hero{padding:35px 0 25px}.hero h1{font-size:42px}.message{background:var(--color-green-soft);border:1px solid var(--color-line);padding:22px;border-radius:12px;margin:14px 0;max-width:550px}.message p{color:var(--color-ink);white-space:pre-line}.empty{padding:24px;color:var(--color-muted);text-align:center}.task{display:flex;gap:12px;align-items:center}.task input{width:19px;height:19px}.done{text-decoration:line-through;opacity:.55}.bar{height:7px;background:var(--color-paper);border-radius:8px;overflow:hidden}.bar i{display:block;height:100%;background:var(--color-accent)}@media(max-width:1050px){.shell{grid-template-columns:180px minmax(0,1fr)}main{padding:24px}.vehicles{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-two{grid-template-columns:minmax(0,1fr)}}@media(max-width:768px){.shell{display:block}.sidebar{padding:16px;gap:15px}.sidebar nav{display:flex;overflow:auto}.sidebar button{padding:8px 12px}.sidebar footer{display:none}.brand{font-size:19px}.topbar{padding:12px 16px;flex-wrap:wrap}main{padding:20px 16px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:14px}.heading,.section-head{align-items:flex-start;flex-direction:column;gap:12px}h1{font-size:25px}.panel{padding:16px}.hero h1{font-size:32px}.public-header{flex-wrap:wrap}.fields{grid-template-columns:minmax(0,1fr)}.vehicles{grid-template-columns:minmax(0,1fr)}.list-row{flex-wrap:wrap}.topbar span{font-size:11px}}
/* Refined operational hierarchy */
.sidebar{position:sticky;top:0;height:100vh;padding-top:38px}.sidebar .brand{padding:0 10px 28px;border-bottom:1px solid var(--color-side)}.sidebar nav{gap:10px}.sidebar button{font-weight:500;letter-spacing:.03em}.topbar{min-height:78px}.heading{margin:10px 0 32px}h1{font-weight:750}.stat{border-radius:9px;padding:22px 24px}.stat strong{font-size:42px;font-variant-numeric:tabular-nums}.stat:first-child strong{color:var(--color-accent)}.panel{border-radius:9px}.section-head h2{letter-spacing:.02em}.badge{letter-spacing:.02em}.public-main{max-width:1240px}.hero{padding:48px 0 42px;border-bottom:1px solid var(--color-line);margin-bottom:30px}.hero h1{font-size:clamp(32px,4.3vw,56px);line-height:1.45;letter-spacing:-.04em}.hero p{margin-top:18px}.vehicle{border-radius:10px}.vehicle-art{height:180px;border-bottom:1px solid var(--color-line)}.vehicle-art svg{width:245px;height:125px}.vehicle:nth-child(3n+2) .vehicle-art{background:var(--color-blue-soft);color:var(--color-accent)}.vehicle:nth-child(3n) .vehicle-art{background:var(--color-green-soft);color:var(--color-green)}.vehicle-body{padding:25px}.vehicle h2{font-size:21px}.vehicle-body button{padding:13px}.public-header .brand{letter-spacing:2px}.timeline th{padding-top:18px;padding-bottom:18px}.timeline td:first-child{background:var(--color-surface);position:sticky;left:0;z-index:1}.timeline .slot{width:100%}@media(max-width:768px){.sidebar{position:static;height:auto;padding-top:18px}.sidebar .brand{padding:0 0 12px}.sidebar nav{gap:4px}.topbar{min-height:65px}.heading{margin-top:2px}.stat{padding:15px}.stat strong{font-size:34px}.hero{padding:22px 0 28px}.vehicle-art{height:150px}}
/* kentiku placement: compact navigation, overview, attention, equal columns.
   Existing rental palette and all information remain in place. */
.shell{grid-template-columns:224px minmax(0,1fr)}
.shell>div{min-width:0}
.sidebar{padding:16px 12px;gap:24px}
.sidebar .brand{font-size:20px;padding:0 8px;border:0}
.sidebar .brand small{font-size:9px;letter-spacing:1px}
.sidebar nav{gap:4px}
.sidebar button{padding:8px 12px;font-size:14px}
.topbar{min-height:56px;padding:10px 32px}
.shell main{max-width:none;padding:24px 32px}
.kentiku-dashboard .heading{margin:0 0 24px}
.kentiku-dashboard h1{font-size:22px;letter-spacing:0}
.kentiku-dashboard .eyebrow{display:none}
.kentiku-dashboard .stats{gap:16px;margin-bottom:24px}
.kentiku-dashboard .stat{padding:18px 20px}
.kentiku-dashboard .stat strong{font-size:32px}
.kentiku-dashboard .panel{padding:20px;margin-bottom:0;border-radius:12px}
.kentiku-dashboard .attention-panel{margin-bottom:24px;max-height:300px;overflow:auto}
.kentiku-dashboard .attention-panel .list-row{padding:10px 0}
.kentiku-dashboard .grid-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.kentiku-dashboard .section-head{margin-bottom:14px;align-items:flex-start}
.kentiku-dashboard .section-head h2{font-size:14px;line-height:2}
.kentiku-dashboard .section-head button{padding:5px 9px;font-size:12px}
.dashboard-panel-body{max-height:550px;overflow:auto}
.kentiku-dashboard .list-row{padding:12px 0}
.kentiku-dashboard .list-row>div{min-width:0}
.kentiku-dashboard .list-row strong{font-size:13px}
.kentiku-dashboard .list-row small{font-size:11px}
.kentiku-dashboard .list-row button{padding:7px 9px;font-size:12px;flex-shrink:0}
.kentiku-dashboard .notice{margin-bottom:20px}
@media(max-width:1150px){.kentiku-dashboard .section-head{flex-direction:column;gap:8px}.kentiku-dashboard .list-row{flex-wrap:wrap}}
@media(max-width:768px){.shell{display:block}.shell main{padding:20px 16px}.sidebar{gap:14px}.topbar{padding:10px 16px}.kentiku-dashboard .grid-two{grid-template-columns:minmax(0,1fr)}.kentiku-dashboard .stats{gap:10px}.kentiku-dashboard .stat{padding:14px}.kentiku-dashboard .panel{padding:16px}.dashboard-panel-body{max-height:440px}.kentiku-dashboard .attention-panel{max-height:280px}}
/* Hourly dispatch view; same palette, exact start/end placement. */
.hour-scroll{overflow:auto;max-height:680px;border:1px solid var(--color-line);border-radius:7px;margin-top:16px}
.hour-table{min-width:1928px}
.hour-head,.hour-row{display:grid;grid-template-columns:200px minmax(0,1fr)}
.hour-head{position:sticky;top:0;z-index:4;background:var(--color-paper);height:45px}
.hour-car{position:sticky;left:0;z-index:2;background:var(--color-surface);border-right:1px solid var(--color-line);padding:10px 12px;font-size:12px}
.hour-head .hour-car{background:var(--color-paper);z-index:5}
.hour-car strong,.hour-car small{display:block}.hour-car small{font-size:10px;color:var(--color-muted)}
.hour-ruler{display:grid;grid-template-columns:repeat(24,minmax(0,1fr))}
.hour-ruler span{padding:12px 5px;font-size:11px;border-right:1px solid var(--color-line);color:var(--color-muted)}
.hour-row{height:72px;border-top:1px solid var(--color-line)}
.hour-track{position:relative;background:repeating-linear-gradient(to right,var(--color-surface) 0,var(--color-surface) calc(100% / 24 - 1px),var(--color-line) calc(100% / 24 - 1px),var(--color-line) calc(100% / 24))}
.hour-booking,.hour-prep{position:absolute;top:9px;height:53px;overflow:hidden;border-radius:5px;text-align:left;padding:5px 8px}
.hour-booking{background:var(--color-blue-soft);color:var(--color-accent);border:1px solid var(--color-accent);z-index:1;min-width:0}
.hour-booking.is-rented{background:var(--color-navy);color:var(--color-surface);border-color:var(--color-navy)}
.hour-booking span,.hour-booking small{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hour-prep{background:var(--color-orange-soft);color:var(--color-orange);font-size:11px;white-space:nowrap}
.hour-block{position:absolute;inset:9px 0;border-radius:5px;padding:13px;font-size:12px}.hour-block.maintenance{background:var(--color-red-soft);color:var(--color-red)}.hour-block.cleaning{background:var(--color-orange-soft);color:var(--color-orange)}
@media(max-width:768px){.hour-scroll{max-height:570px}.schedule-switch{gap:8px}.schedule-switch button{padding:9px 11px;font-size:12px}}
/* Customer site: editorial split hero, search first, grouped vehicle catalogue. */
.rental-site{background:var(--color-surface)}.site-header{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 5%}.site-logo{font-size:24px;font-weight:850;letter-spacing:1.5px;color:var(--color-navy);text-decoration:none;line-height:1.25}.site-logo span{font-weight:400}.site-logo small{display:block;font-size:10px;letter-spacing:1px;margin-top:7px}.site-header nav{display:flex;gap:28px}.site-header nav a,.site-cta{color:var(--color-ink);text-decoration:none;font-size:13px;white-space:nowrap}.site-cta{border-bottom:2px solid var(--color-accent);padding:10px 0}.site-demo{background:var(--color-blue-soft);color:var(--color-accent);text-align:center;font-size:11px;padding:9px 16px}.site-main{max-width:1280px;padding:0 40px}.site-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:50px;align-items:center;padding:70px 0 60px}.site-hero h1{font-size:clamp(32px,3.4vw,48px);line-height:1.55;letter-spacing:-.055em;margin:15px 0 22px}.site-hero p{line-height:2;font-size:14px}.hero-link{display:inline-flex;gap:40px;margin-top:24px;text-decoration:none;color:var(--color-ink);font-weight:650;border-bottom:1px solid var(--color-ink);padding-bottom:10px}.hero-link span{color:var(--color-accent)}.site-visual{background:var(--color-blue-soft);min-height:340px;position:relative;padding:30px;overflow:hidden;border-radius:4px}.visual-label{font-size:11px;letter-spacing:3px;color:var(--color-accent)}.hero-car{padding:25px 0;color:var(--color-navy);transform:rotate(-4deg)}.hero-car svg{width:100%;height:200px}.visual-bottom{display:flex;justify-content:space-between;gap:15px;font-size:11px;border-top:1px solid var(--color-line);padding-top:18px}.site-visual>small{display:block;font-size:9px;color:var(--color-muted);margin-top:8px}.search-panel{padding:30px;background:var(--color-navy);color:var(--color-surface);border-radius:10px}.search-panel .eyebrow,.search-panel p,.search-panel label{color:var(--color-side)}.search-panel h2{font-size:22px}.search-panel form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:20px;align-items:end;margin-top:20px}.search-panel button{height:48px}.search-panel .error{grid-column:1/-1;margin:0;color:var(--color-surface)}.site-section{padding:65px 0;border-bottom:1px solid var(--color-line);scroll-margin-top:24px}.fleet-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.fleet-heading h2,.faq-section h2{font-size:28px;letter-spacing:-.03em}.fleet-heading p{font-size:12px}.site-categories{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:22px}.site-categories button{border-radius:30px;padding:8px 20px;font-size:12px}.site-categories .selected{background:var(--color-navy);border-color:var(--color-navy);color:var(--color-surface)}.results-count{font-size:12px;margin:18px 0}.results-count span{float:right;font-size:10px}.site-fleet{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.site-car{border:1px solid var(--color-line);border-radius:8px;overflow:hidden}.site-car-image{background:var(--color-paper);height:180px;padding:16px;position:relative;display:flex;align-items:center;justify-content:center}.site-car-image>span{position:absolute;top:14px;left:16px;font-size:10px;color:var(--color-muted)}.site-car-image svg{width:80%;height:125px;color:var(--color-navy)}.site-car-image>small{position:absolute;bottom:10px;right:12px;font-size:9px;color:var(--color-muted)}.site-car-content{padding:22px}.site-car h3{font-size:19px}.site-car p{font-size:11px}.car-price{display:flex;justify-content:space-between;align-items:end;gap:10px;margin:20px 0}.car-price>span{font-size:10px;color:var(--color-muted)}.car-price strong{font-size:24px;font-variant-numeric:tabular-nums;white-space:nowrap}.car-price small{font-size:10px;font-weight:400;margin-left:4px}.site-car button{width:100%;font-size:12px}.guide-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.guide-steps>div{border-top:2px solid var(--color-line);padding-top:18px}.guide-steps>div>span{font-size:28px;color:var(--color-accent);font-weight:700}.guide-steps h3{font-size:15px;margin:14px 0 10px}.guide-steps p{font-size:12px}.site-footnote{font-size:10px;margin-top:24px}.faq-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:50px}.faq-section details{border-bottom:1px solid var(--color-line);padding:20px 0}.faq-section summary{cursor:pointer;font-weight:600;font-size:14px}.faq-section details p{font-size:12px;padding-top:12px}.site-footer{max-width:1360px;margin:auto;padding:40px;display:flex;justify-content:space-between;gap:30px}.site-footer>div:last-child{display:flex;flex-direction:column;align-items:end;gap:14px;font-size:10px;color:var(--color-muted)}.site-footer button{font-size:11px}.site-detail-art{background:var(--color-paper);padding:20px;text-align:center}.site-detail-art svg{width:260px;max-width:100%;height:130px}.site-empty{grid-column:1/-1;padding:50px;text-align:center;background:var(--color-paper)}
@media(max-width:1050px){.site-header nav{gap:14px}.site-fleet{grid-template-columns:repeat(2,minmax(0,1fr))}.site-hero{gap:25px}.search-panel form{grid-template-columns:repeat(2,minmax(0,1fr))}.search-panel form>button{grid-column:1/-1}.guide-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:768px){.site-header{padding:18px 20px;flex-wrap:wrap;gap:18px}.site-logo{font-size:21px}.site-header nav{order:3;width:100%;justify-content:space-between;gap:8px}.site-header nav a{font-size:11px}.site-cta{font-size:11px}.site-main{padding:0 20px}.site-hero{grid-template-columns:minmax(0,1fr);padding:36px 0;gap:28px}.site-hero h1{font-size:34px}.site-visual{min-height:230px;padding:20px}.hero-car{padding:0}.hero-car svg{height:145px}.search-panel{padding:22px 18px}.search-panel form{grid-template-columns:minmax(0,1fr);gap:15px}.search-panel h2{font-size:20px}.site-section{padding:42px 0}.fleet-heading{flex-direction:column;align-items:flex-start;gap:10px}.fleet-heading h2,.faq-section h2{font-size:25px}.site-fleet{grid-template-columns:minmax(0,1fr);gap:20px}.results-count span{float:none;display:block;margin-top:6px}.site-categories{gap:7px}.site-categories button{padding:7px 14px}.guide-steps{grid-template-columns:minmax(0,1fr);gap:22px}.faq-section{grid-template-columns:minmax(0,1fr);gap:15px}.site-footer{padding:30px 20px;flex-direction:column}.site-footer>div:last-child{align-items:flex-start}.site-demo{font-size:10px}.car-price strong{font-size:26px}}
/* Search is part of the first-view hero, alongside copy and visual. */
.site-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);grid-template-areas:"copy search" "visual search";gap:24px 50px;padding:40px 0 44px;align-items:start}
.site-hero-copy{grid-area:copy}.site-hero .search-panel{grid-area:search;align-self:center;padding:30px}
.site-hero h1{font-size:clamp(30px,3vw,43px);margin:10px 0 14px;line-height:1.45}
.site-hero .hero-link{display:none}
.site-hero .site-visual{grid-area:visual;min-height:0;padding:18px 24px}
.site-hero .hero-car{padding:0}.site-hero .hero-car svg{height:115px}
.site-hero .visual-bottom{padding-top:10px}.site-hero .site-visual>small{margin-top:3px}
.site-hero .search-panel form{grid-template-columns:minmax(0,1fr);gap:18px;margin-top:22px}
.site-hero .search-panel button{grid-column:auto;height:50px;margin-top:5px}
.site-hero .search-panel input{min-height:48px}
@media(max-width:768px){.site-hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "search" "visual";gap:24px;padding:28px 0}.site-hero h1{font-size:32px}.site-hero .search-panel{padding:24px 20px}.site-hero .site-visual{padding:16px 20px}.site-hero .hero-car svg{height:110px}}
/* Booking is the first visual and keyboard destination in the hero. */
.site-hero{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-areas:"search copy" "search visual"}
@media(max-width:768px){.site-hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"search" "copy" "visual"}}
.site-hero .coastal-visual{margin:0;padding:0;background:var(--color-paper);overflow:hidden}.coastal-visual img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.coastal-visual figcaption{font-size:10px;color:var(--color-muted);padding:8px 12px}
.search-panel .booking-steps{font-size:11px;margin-top:12px;line-height:1.9}
/* Full hero photograph with a white booking surface. */
:root{--color-hero-shade:rgba(10,27,44,.59);--color-hero-clear:rgba(10,27,44,.06);--color-hero-shadow:rgba(10,27,44,.2)}
.site-hero{position:relative;isolation:isolate;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-areas:"search copy";align-items:center;gap:48px;margin:24px -40px 0;padding:48px 40px;min-height:580px;background:var(--color-navy);border-radius:8px;overflow:hidden}
.site-hero .coastal-visual{position:absolute;inset:0;z-index:-2;margin:0;border-radius:0;background:none}
.site-hero .coastal-visual img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
.site-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--color-hero-clear),var(--color-hero-shade))}
.site-hero .coastal-visual figcaption{position:absolute;right:16px;bottom:8px;color:var(--color-surface);background:var(--color-hero-shade);border-radius:4px}
.site-hero .search-panel{background:var(--color-surface);color:var(--color-ink);box-shadow:0 12px 35px var(--color-hero-shadow);padding:28px;border:1px solid var(--color-line)}
.site-hero .search-panel .eyebrow{color:var(--color-accent)}
.site-hero .search-panel p,.site-hero .search-panel label{color:var(--color-muted)}
.site-hero .search-panel .error{color:var(--color-red)}
.site-hero-copy{color:var(--color-surface);align-self:start;padding-top:24px;text-shadow:0 2px 12px var(--color-hero-shade)}
.site-hero-copy .eyebrow,.site-hero-copy p{color:var(--color-surface)}
.site-hero-copy h1{font-size:clamp(28px,2.7vw,40px)}
@media(max-width:768px){.site-hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"search" "copy";margin:0 -20px;padding:26px 20px 42px;gap:20px;min-height:0;border-radius:0}.site-hero .search-panel{padding:22px 18px}.site-hero-copy{padding-top:0}.site-hero-copy h1{font-size:28px}.site-hero .coastal-visual{position:absolute;padding:0}.site-hero .coastal-visual img{object-position:65% center}.site-hero::after{background:linear-gradient(180deg,var(--color-hero-clear),var(--color-hero-shade))}.site-hero .coastal-visual figcaption{font-size:9px;bottom:6px;right:8px}}
.line-invite{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:30px;align-items:center}.line-invite h2,.policy-guide h2{font-size:26px}.line-invite p{margin:14px 0;line-height:1.9}.line-invite small,.policy-guide small{font-size:11px;color:var(--color-muted)}.line-add{background:var(--color-green);color:var(--color-surface);width:100%;padding:18px}.line-add:disabled{opacity:1;cursor:not-allowed}.line-invite>div:last-child p{font-size:11px}.policy-guide>div+div{display:flex;flex-wrap:wrap;gap:15px;margin:24px 0}.policy-guide a{color:var(--color-accent);border-bottom:1px solid var(--color-line);padding:12px 0;text-decoration:none}.legal-main{max-width:1000px}.legal-main h3{margin-top:25px}.legal-main p{margin-top:12px;line-height:1.95}.legal-nav{display:flex;flex-wrap:wrap;gap:18px;margin-top:24px}.legal-main a,.site-footer a{color:var(--color-accent)}.legal-main li{margin-bottom:12px}@media(max-width:768px){.line-invite{grid-template-columns:minmax(0,1fr)}.line-invite h2,.policy-guide h2{font-size:23px}.policy-guide>div+div{flex-direction:column}}
/* Edge-to-edge coastal hero: scenery beneath booking, car on the right. */
.site-hero{width:100vw;margin:0 calc(50% - 50vw);border-radius:0;padding:48px max(40px,calc((100vw - 1200px)/2));min-height:620px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.site-hero .coastal-visual img{object-position:center center}
@media(max-width:768px){.site-hero{width:100vw;margin:0 calc(50% - 50vw);padding:28px 20px 44px;min-height:0;grid-template-columns:minmax(0,1fr)}.site-hero .coastal-visual img{object-position:68% center}}

/* Leave room for the hosting badge below footer controls. */
.site-footer{padding-bottom:110px}
/* Authenticated server demo */
.login-page{min-height:85vh;display:grid;place-items:center;padding:32px 20px}.login-page>.panel{width:min(100%,440px)}
.account-controls{display:flex;gap:8px;align-items:center}.account-controls button{white-space:nowrap}
.server-status{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:1000;padding:14px 20px;background:#172f4e;color:white;border-radius:10px;max-width:calc(100% - 32px);box-shadow:0 4px 24px #0003}
[hidden]{display:none!important}
@media(max-width:600px){.site-header{flex-wrap:wrap}.account-controls{width:100%;justify-content:flex-end}.topbar{flex-wrap:wrap;gap:8px}}
.notification-connection{display:flex;justify-content:space-between;gap:24px;align-items:center}.notification-connection h2{margin:12px 0 8px}.notification-connection p{line-height:1.7}.notification-row{padding:22px 0;border-top:1px solid var(--color-border,#e5eaf1)}.notification-summary{display:flex;justify-content:space-between;gap:16px;align-items:center}.notification-summary strong{margin-left:12px}.notification-summary small{display:block;margin-top:10px;color:#66758b}.notification-row details{margin:14px 0}.notification-row summary{cursor:pointer;font-weight:600}.notification-body{white-space:pre-wrap;background:#f4f7fb;border-radius:10px;padding:18px;line-height:1.8}.notification-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.notification-filters{margin:20px 0}@media(max-width:700px){.notification-connection{display:block}.notification-summary{align-items:flex-start}.notification-summary strong{display:block;margin:10px 0 0}}
