[data-sig="lowgap-roast"]{height:250dvh;background:var(--sage);position:relative;--progress:.1}[data-sig="lowgap-roast"] .roast-stage{position:sticky;top:0;height:100dvh;min-height:650px;display:flex;flex-direction:column;padding:32px var(--edge) 20px;overflow:hidden}[data-sig="lowgap-roast"] .roast-top{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;flex:1;min-height:0;position:relative;isolation:isolate;max-width:var(--wrap);width:100%;margin:auto}[data-sig="lowgap-roast"] .roast-copy{align-self:center;position:relative;z-index:2;padding:32px}[data-sig="lowgap-roast"] h1{font-size:clamp(45px,4.5vw,70px);font-weight:900;line-height:1.05;max-width:none}[data-sig="lowgap-roast"] .roast-location{font-size:13px;margin-bottom:28px}[data-sig="lowgap-roast"] .roast-copy>p:not(.roast-location){font-size:18px;max-width:33ch;margin-top:24px;margin-bottom:24px}[data-sig="lowgap-roast"] .roast-photos{position:absolute;inset:0;min-height:0;overflow:hidden;margin:0;border-radius:0;width:100%;z-index:0}[data-sig="lowgap-roast"] .roast-frame{position:absolute;inset:0;opacity:0}[data-sig="lowgap-roast"] .roast-frame.active{opacity:1}[data-sig="lowgap-roast"] .roast-frame img{height:100%;width:100%;object-position:center}[data-sig="lowgap-roast"] .photo-caption{position:absolute;bottom:0;left:0;right:0;background:rgba(231,228,216,.6);display:flex;justify-content:space-between;padding:12px 32px;font-size:12px;gap:16px}[data-sig="lowgap-roast"] .roast-chart{max-width:var(--wrap);width:100%;margin:16px auto 0;flex:0 0 300px}[data-sig="lowgap-roast"] .roast-readout{display:flex;align-items:baseline;gap:28px;border-top:1px solid var(--line);padding-top:16px}[data-sig="lowgap-roast"] .roast-readout>span:first-child{font-size:16px;margin-right:auto}[data-sig="lowgap-roast"] .stage-name{font-size:16px;font-weight:500;min-width:100px}[data-sig="lowgap-roast"] .stage-temp{font-family:var(--display);font-size:24px}[data-sig="lowgap-roast"] .stage-time{font-size:18px;font-variant-numeric:tabular-nums}[data-sig="lowgap-roast"] .graph{position:relative;height:170px;margin:16px 0 8px 36px}[data-sig="lowgap-roast"] .graph-lines{position:absolute;inset:0;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to top,transparent 0,transparent 54px,var(--line) 55px,transparent 56px)}[data-sig="lowgap-roast"] .axis-temp,[data-sig="lowgap-roast"] .axis-low{position:absolute;left:-36px;font-size:10px}[data-sig="lowgap-roast"] .axis-temp{top:0}[data-sig="lowgap-roast"] .axis-low{bottom:0}[data-sig="lowgap-roast"] .curve-ghost,[data-sig="lowgap-roast"] .curve-window,[data-sig="lowgap-roast"] .curve-line{position:absolute;inset:0;color:var(--deep)}[data-sig="lowgap-roast"] .curve-ghost{opacity:.2}[data-sig="lowgap-roast"] svg{width:100%;height:100%}[data-sig="lowgap-roast"] .curve-window{overflow:hidden;transform:scaleX(var(--progress));transform-origin:left}[data-sig="lowgap-roast"] .curve-line{transform:scaleX(calc(1 / var(--progress)));transform-origin:left;color:var(--deep)}[data-sig="lowgap-roast"] .first-crack{position:absolute;left:72%;top:28px;bottom:0;border-left:1px dashed var(--deep);padding:8px 12px;font-size:12px}[data-sig="lowgap-roast"] .first-crack i{position:absolute;top:0;left:-5px;width:9px;height:9px;background:var(--deep);border-radius:50%}[data-sig="lowgap-roast"] .first-crack small{display:block;font-size:10px}[data-sig="lowgap-roast"] .roast-stages{display:flex;justify-content:space-between;gap:8px}[data-sig="lowgap-roast"] .roast-stages button{font-size:12px;min-height:40px;padding:8px 12px;border-bottom:2px solid transparent;white-space:nowrap}[data-sig="lowgap-roast"] .roast-stages button[aria-pressed=true]{border-color:var(--deep);font-weight:700}[data-sig="lowgap-roast"] .chart-note{font-size:10px;text-align:right;max-width:none;margin-top:4px}
@supports(animation-timeline:view()){[data-sig="lowgap-roast"] .roast-frame img{animation:roast-photo linear both;animation-timeline:view();animation-range:entry 0% exit 100%}@keyframes roast-photo{from{transform:scale(1.025)}to{transform:scale(1)}}}

@media(max-width:900px){[data-sig="lowgap-roast"] h1{font-size:32px}[data-sig="lowgap-roast"] .roast-top{gap:20px}[data-sig="lowgap-roast"] .roast-copy{padding:24px}[data-sig="lowgap-roast"] .photo-caption span:first-child{display:none}}
@media(max-width:600px){[data-sig="lowgap-roast"]{height:180dvh}[data-sig="lowgap-roast"] .roast-stage{padding:24px var(--edge) 12px;min-height:650px}[data-sig="lowgap-roast"] .roast-top{display:block;position:relative;max-height:none;min-height:360px}[data-sig="lowgap-roast"] .roast-copy{padding:20px 12px;position:relative;z-index:2}[data-sig="lowgap-roast"] .roast-location{font-size:11px;margin-bottom:16px}[data-sig="lowgap-roast"] h1{font-size:clamp(26px,8.2vw,32px);max-width:none}[data-sig="lowgap-roast"] .roast-copy>p:not(.roast-location){font-size:15px;max-width:24ch;margin:18px 0}[data-sig="lowgap-roast"] .roast-copy .button{padding:12px 16px;font-size:14px}[data-sig="lowgap-roast"] .roast-photos{position:absolute;inset:0;width:100%;margin:0;border-radius:0;z-index:0}[data-sig="lowgap-roast"] .roast-frame img{object-position:30% center}[data-sig="lowgap-roast"] .photo-caption{display:none}[data-sig="lowgap-roast"] .roast-chart{flex-basis:245px;margin-top:20px}[data-sig="lowgap-roast"] .roast-readout{gap:12px}[data-sig="lowgap-roast"] .roast-readout>span:first-child{font-size:14px}[data-sig="lowgap-roast"] .stage-name{font-size:12px;min-width:0}[data-sig="lowgap-roast"] .stage-temp{font-size:18px}[data-sig="lowgap-roast"] .stage-time{font-size:13px}[data-sig="lowgap-roast"] .graph{height:140px;margin-top:12px}[data-sig="lowgap-roast"] .roast-stages{gap:0;flex-wrap:wrap;justify-content:space-between}[data-sig="lowgap-roast"] .roast-stages button{font-size:10px;min-height:36px;padding:6px 5px}[data-sig="lowgap-roast"] .chart-note{font-size:9px;text-align:left}[data-sig="lowgap-roast"] .first-crack{left:70%;font-size:10px;padding:6px}[data-sig="lowgap-roast"] .first-crack small{font-size:8px}}
@media(prefers-reduced-motion:reduce){[data-sig="lowgap-roast"]{height:auto;--progress:1}[data-sig="lowgap-roast"] .roast-stage{position:relative;min-height:720px;max-height:none}[data-sig="lowgap-roast"] .roast-frame img{animation:none}}

/* The steel copy field stays opaque through every roast keyframe. */
[data-sig="lowgap-roast"] .roast-copy{background:var(--steel);margin:24px 0 56px;align-self:center}
[data-sig="lowgap-roast"] .photo-caption{background:var(--paper)}
@media(max-width:600px){[data-sig="lowgap-roast"] .roast-copy{margin:0 0 100px;padding:20px 16px}[data-sig="lowgap-roast"] .roast-top{min-height:400px}[data-sig="lowgap-roast"] .roast-chart{flex-basis:245px}}
