/* Complements the existing Koleos design for individual vehicle pages. */
/* OD-LAYOUT-PRIMITIVES v1 — structure only */
@layer od-layout {
 :where(.od-stack,.od-row,.od-grid,.od-field,.od-stat,.od-tile)>*{min-width:0}
 .od-stack{display:flex;flex-direction:column;gap:var(--od-gap,8px)}
 .od-row{display:flex;align-items:center;gap:var(--od-gap,8px)}
 .od-grid{display:grid;gap:var(--od-gap,24px);grid-template-columns:repeat(var(--od-cols,2),minmax(0,1fr))}
 .od-field,.od-stat{display:grid;gap:var(--od-gap,4px)}
 .od-field>*,.od-stat>*{display:block}.od-tile{display:grid;grid-template-rows:auto 1fr}
 .od-media{display:block;width:100%;height:auto;aspect-ratio:var(--od-ratio,auto)}
 .od-nowrap{white-space:nowrap}
}
/* /OD-LAYOUT-PRIMITIVES v1 */
.individual-sheet{--sheet-gap:32px;--photo-ground:#efeff5;--photo-line:#b4b2ca;--sheet-motion:240ms}
.individual-sheet .hero{height:auto;min-height:0;max-height:none;overflow:visible;background:var(--night);padding:0 0 40px;margin-top:var(--header-height)}
.individual-sheet .hero__media{position:relative;inset:auto;display:flex;flex-direction:column;gap:48px;padding:32px clamp(24px,4vw,56px) 40px;min-height:560px}
.individual-sheet .hero__media::after{display:none}
.individual-sheet .detail-back{position:static;display:flex;align-self:flex-start}
.individual-sheet .hero-photo-space{align-self:flex-end;color:#ddddec;display:flex;align-items:center;gap:12px;border-bottom:1px solid #777598;padding:0 0 16px;max-width:100%;font-size:16px}
.individual-sheet .hero-photo-space svg{width:32px;height:32px;fill:currentColor;flex:none}
.individual-sheet .hero__content{position:static;inset:auto;width:100%;margin-top:auto;padding:0;align-items:flex-end;gap:40px}
.individual-sheet .hero__text{flex:1;min-width:0;max-width:720px}
.individual-sheet .hero h1{font-size:clamp(40px,5.8vw,80px);line-height:1.08;overflow-wrap:break-word}
.individual-sheet .hero__tagline{max-width:60ch;line-height:1.65}
.individual-sheet .hero__price{flex:0 1 320px;min-width:0}
.individual-sheet .hero__price strong{white-space:nowrap;font-size:clamp(32px,3.2vw,48px)}
.individual-sheet .hero__price .consult-price{white-space:normal;font-family:var(--display);font-size:32px;line-height:1.2}
.individual-sheet .hero__price-note{font-size:16px;opacity:1;line-height:1.5;max-width:320px}
.individual-sheet .booking{position:static;inset:auto;margin:0 clamp(24px,4vw,56px);overflow:visible;border-radius:var(--radius-control);grid-template-columns:1.2fr 1fr 1fr 1fr;gap:0}
.individual-sheet .booking .field{min-width:0}
.individual-sheet .booking .btn{grid-column:1/-1;min-height:56px;height:auto;border-radius:0 0 var(--radius-control) var(--radius-control)}
.individual-sheet .booking label{font-size:16px}
.individual-sheet .booking input,.individual-sheet .booking select{width:100%;min-width:0;font-size:16px;min-height:44px}
.individual-sheet .booking :focus-visible{outline-color:var(--accent)}
.individual-sheet .form-error{color:#8b1b32;font-size:16px;grid-column:1/-1;margin:0;padding:16px 24px}
.individual-sheet .form-error:empty{display:none}
.individual-sheet .photo-space{align-items:center;justify-content:center;min-height:320px;border:1px dashed var(--photo-line);border-radius:var(--radius-media);padding:32px;background:var(--photo-ground);color:var(--muted);text-align:center;line-height:1.5}
.individual-sheet .photo-space svg{width:40px;height:40px;fill:var(--accent);margin-bottom:8px}
.individual-sheet .photo-space__title{font-family:var(--display);font-size:24px;color:var(--ink)}
.individual-sheet .sheet-technical-photo{margin:0;background:var(--paper);border:1px solid var(--line-soft);border-radius:var(--radius-media);padding:32px;display:flex;flex-direction:column;justify-content:center;min-height:480px;gap:32px}
.individual-sheet .sheet-technical-photo img{width:100%;height:auto;object-fit:contain}
.individual-sheet .sheet-technical-photo figcaption{border-top:1px solid var(--line-soft);padding-top:24px;color:var(--muted);font-size:16px;text-align:center}
.individual-sheet .sheet-technical-photo figcaption span{display:block}
.individual-sheet .sheet-technical-photo figcaption span:first-child{color:var(--ink);margin-bottom:8px}
.individual-sheet .tech{gap:clamp(32px,6vw,96px)}
.individual-sheet .tech dl div{font-size:16px}
.individual-sheet .spec dd{font-size:clamp(20px,2vw,28px);overflow-wrap:break-word}
.individual-sheet .spec dt{font-size:16px}
.individual-sheet .band--profile{height:auto;aspect-ratio:auto;max-height:none;min-height:0;padding:0;background:var(--ground)}
.individual-sheet .profile-space{min-height:clamp(320px,40vw,640px);border-radius:var(--radius-surface)}
.individual-sheet .section-head h2{margin:0 0 16px}
.individual-sheet .sheet-interior{min-height:clamp(320px,42vw,640px)}
.individual-sheet .photo-index{display:flex;justify-content:center;flex-wrap:wrap;gap:24px;margin:24px 0 0;padding:0;list-style:none;color:var(--muted)}
.individual-sheet .photo-index li{display:block}
.individual-sheet .sheet-equipment{margin-top:40px}
.individual-sheet .cta{min-height:520px;background:var(--night);flex-direction:column;gap:40px}
.individual-sheet .cta::before{display:none}
.individual-sheet .cta-photo-note{display:flex;gap:12px;align-items:center;color:#ddddec;font-size:16px}
.individual-sheet .cta-photo-note svg{width:24px;height:24px;fill:currentColor}
.individual-sheet a:hover{opacity:1}
@media(hover:hover){.individual-sheet .btn--outline:hover{background:var(--ground);color:var(--ink)}.individual-sheet .detail-back a:hover{background:var(--ground)}}
@media(max-width:1024px){.individual-sheet .hero__content{align-items:flex-start;flex-direction:column}.individual-sheet .hero__price{flex:auto;align-items:flex-start;text-align:left}.individual-sheet .hero__media{min-height:0}}
@media(max-width:960px){.individual-sheet .hero{margin-top:72px}.individual-sheet .sheet-technical-photo{min-height:0}.individual-sheet .booking{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:768px){.individual-sheet .hero__media{padding:24px;gap:40px}.individual-sheet .hero-photo-space{align-self:flex-start}.individual-sheet .hero__content{gap:32px}.individual-sheet .booking{margin:0 24px}.individual-sheet .photo-space{min-height:280px;padding:24px}.individual-sheet .sheet-interior{min-height:360px}.individual-sheet .tech dl div{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.individual-sheet .tech dd{text-align:right}.individual-sheet .hero h1{font-size:clamp(36px,8vw,56px)}}
@media(max-width:480px){.individual-sheet .booking{grid-template-columns:minmax(0,1fr)}.individual-sheet .grid-2{grid-template-columns:minmax(0,1fr)}.individual-sheet .tech dl div{grid-template-columns:minmax(0,1fr);gap:8px}.individual-sheet .tech dd{text-align:left}.individual-sheet .hero__price strong{font-size:36px}.individual-sheet .photo-index{flex-direction:column;align-items:center;gap:8px}}
@media(prefers-reduced-motion:reduce){.individual-sheet *{scroll-behavior:auto;animation:none!important;transition:none!important}}
