/* Local fonts: no third-party request is made during a visit. */
@font-face{font-family:"Manrope";font-style:normal;font-weight:400 800;font-display:swap;src:url("../fonts/manrope-latin-ext.woff2") format("woff2")}
@font-face{font-family:"DM Mono";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/dm-mono-400-latin-ext.woff2") format("woff2")}
@font-face{font-family:"DM Mono";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/dm-mono-500-latin-ext.woff2") format("woff2")}

:root{--sans:"Manrope",Arial,Helvetica,sans-serif;--display:"Manrope",Arial,Helvetica,sans-serif;--mono:"DM Mono","SFMono-Regular",Consolas,monospace}
body{font-family:var(--sans);letter-spacing:-.01em}
h1,h2{font-family:var(--display);font-weight:600;letter-spacing:-.065em;line-height:1.02}
h1 em{font-style:normal;font-weight:400;letter-spacing:-.075em}
.brand{font-family:var(--display);font-weight:700;letter-spacing:.06em}
.brand{gap:0}
.brand-logo{display:block;width:210px;height:auto}
.brand--dark{color:var(--navy)}
.brand--dark .brand-logo{content:url("../Logo_Stortemelk12_schwarz.webp")}
.brand small,.site-header nav a,.button,.eyebrow,.hero-facts span,.spec-grid dt,.spec-note,.business-image p,.quote span,.contact label,.contact-detail,.footer-row>a{font-family:var(--mono);letter-spacing:.08em}
.hero-facts b,.timeline b,.spec-grid dd,.quote blockquote{font-family:var(--display)}
.hero-facts b,.timeline b,.spec-grid dd{font-weight:600;letter-spacing:-.04em}
.lead{font-family:var(--display);font-weight:500;letter-spacing:-.035em}

.hero-title{max-width:none;font-size:clamp(52px,7.5vw,112px);font-weight:600;letter-spacing:-.08em;white-space:nowrap}

.timeline{position:relative;display:grid;grid-template-columns:1fr;gap:0;margin:42px 0 0;padding:0;border:0;list-style:none}
.timeline::before{position:absolute;top:0;bottom:0;left:61px;width:1px;background:var(--line);content:""}
.timeline li{position:relative;z-index:1;display:grid;grid-template-columns:124px minmax(0,1fr);gap:18px;align-items:start;min-width:0;padding:0 0 24px;border:0}
.timeline figure{aspect-ratio:4 / 3;margin:0;overflow:hidden;background:var(--navy)}
.timeline img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.timeline li:hover img{transform:scale(1.04)}
.timeline li>div{min-height:93px;padding:7px 0 13px;border-bottom:1px solid var(--line)}
.timeline b{display:block;margin-bottom:3px;font-size:21px}
.timeline li span{display:block;padding:0;border:0;font-size:12px;line-height:1.4}
@media(max-width:800px){.timeline{grid-template-columns:1fr}.timeline li{grid-template-columns:110px minmax(0,1fr);gap:15px}.timeline::before{left:54px}.timeline li>div{min-height:82px}.timeline b{font-size:19px}}
@media(max-width:800px){.hero-title{font-size:clamp(46px,11.5vw,76px);white-space:normal}}

.onboard-details{margin-top:78px;padding-top:0!important;border-top:0!important}
.onboard-details h2{margin-bottom:42px}
.specs .container{display:flex;flex-direction:column}
.specs .spec-note{order:3;margin-top:42px}
.specs .onboard-details{order:1}
.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px}
.detail-grid article{padding-top:19px;border-top:1px solid rgba(255,255,255,.35)}
.detail-grid h3{margin:0 0 14px;color:#fff;font-family:var(--display);font-size:27px;font-weight:600;letter-spacing:-.04em;line-height:1.2}
.detail-grid p{margin:0 0 13px;color:#b9d1d7;font-size:14px;line-height:1.55}
.detail-grid p:last-child{margin-bottom:0}
@media(max-width:800px){.onboard-details{margin-top:55px}.detail-grid{grid-template-columns:1fr;gap:28px}}

.charter-details{order:2;margin-top:88px}
.charter-details h2{margin-bottom:42px}
.charter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 45px}
.charter-grid article{padding-top:19px;border-top:1px solid rgba(255,255,255,.35)}
.charter-grid h3{margin:0 0 14px;color:#fff;font-family:var(--display);font-size:27px;font-weight:600;letter-spacing:-.04em;line-height:1.2}
.charter-grid p{margin:0;color:#b9d1d7;font-size:14px;line-height:1.55}
@media(max-width:800px){.charter-details{margin-top:64px}.charter-grid{grid-template-columns:1fr;gap:28px}}

.gallery-grid{grid-template-columns:1.25fr 1fr 1fr;grid-template-rows:220px 220px 180px}
.gallery-tall{grid-row:span 3}
.gallery-grid .quote{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 115px;grid-template-rows:1fr auto;grid-column:span 2;align-items:center;padding:26px 36px;overflow:hidden}
.gallery-grid .quote blockquote{grid-column:1;grid-row:1;max-width:540px;font-size:clamp(24px,2.4vw,31px)}
.gallery-grid .quote span{grid-column:1;grid-row:2;margin-top:14px}
.gallery-grid .quote::after{grid-column:2;grid-row:1 / span 2;align-self:center;justify-self:end;color:rgba(198,222,220,.18);content:"“";font-family:var(--display);font-size:180px;font-weight:600;line-height:.6}
@media(max-width:800px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:310px 210px 210px 190px}.gallery-tall{grid-column:span 2;grid-row:auto}.gallery-grid .quote{grid-column:span 2}}
@media(max-width:430px){.gallery-grid{grid-template-columns:1fr;grid-template-rows:300px repeat(4,210px) auto}.gallery-tall,.gallery-grid .quote{grid-column:auto}.gallery-grid .quote{min-height:220px;padding:28px}.gallery-grid .quote::after{font-size:135px}}
