/* The home page: the sections after the masthead (the masthead itself is in site.css, since its flag docks into the
   shared header). */

/* the one-minute rule */
#one-minute{padding-top:clamp(96px,11vw,170px)}
.ladder-say{min-height:3.2em;margin:22px auto 0;text-align:center;font-size:var(--fs-1);max-width:34em;color:var(--stock-hi)}
.ladder-say b{color:var(--gold);font-weight:600}
.exceptions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,4vw,56px);margin-top:clamp(56px,7vw,96px)}
/* the engraved pieces themselves, rendered on a clear ground, the attacker on the left: the fight's first frame, the
   upright pieces, until js/fight.js plays the rest (the loser falls) */
.exception .piece{display:block;width:100%;height:auto;aspect-ratio:800/396}
.exception figcaption{font-family:var(--text);font-style:normal;font-size:var(--fs-0);color:#d8dcd6;margin-top:16px;line-height:1.45}
.exception figcaption b{color:var(--stock-hi);font-weight:600}
.night-more{margin:clamp(40px,5vw,64px) 0 0;text-align:center;max-width:none}
@media (max-width:760px){ .exceptions{grid-template-columns:1fr;max-width:440px;margin-inline:auto} }

/* a round in three steps */
.round-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,4vw,56px);counter-reset:step}
.round-steps li{margin:0;counter-increment:step}
/* single objects, rendered on a clear ground (owner: no scenes), each floating in the step's 4:3 frame */
.round-steps .prop{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
/* HMS Pandora 35% larger (owner), from the same baseline: she fills her frame's height, so the frame is 35% taller
   (4 : 3 x 1.35) and, where the three steps stand side by side, pulled up by the extra (a quarter of the width x .35) */
.round-steps .prop-pandora{aspect-ratio:4/4.05}
@media (min-width:861px){ .round-steps .prop-pandora{margin-top:-26.25%} .round-steps{margin-top:16px} } /* room for her masthead under the text above */
.round-steps h3{margin:22px 0 .35em;display:flex;align-items:baseline;gap:.45em}
.round-steps h3::before{content:counter(step);font:400 1.5em/1 var(--numeral);color:var(--scarlet)}
.round-steps p{color:var(--ink-2)}
@media (max-width:860px){ .round-steps{grid-template-columns:1fr;max-width:520px} }
/* Nobody waits for a turn, on a phone: centred, the heading, its rule, the props and the steps (owner) */
@media (max-width:860px){
  .round-plate .section-head{text-align:center;justify-items:center}
  .round-plate .section-head h2::after{margin-inline:auto}
  .round-plate .round-steps{margin-inline:auto;text-align:center}
  .round-plate .round-steps h3{justify-content:center}
  .round-plate .round-steps .prop-pandora{transform:translateX(9%)}   /* her shadow trails right: the hull itself sits centred */
}
.fog{margin-top:clamp(80px,10vw,150px);align-items:center}
.fog-title{font:400 var(--fs-3)/1.02 var(--display);margin-bottom:.4em;letter-spacing:var(--display-track)}

/* scoring and the storm */
.scores{display:grid;grid-template-columns:1fr 1fr;gap:18px 28px;margin:28px 0 32px}
/* each number in a round badge, as the buttons are made: scarlet fill, an ink ring, a cream line inside, an offset shadow (owner) */
.scores div{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center}
.scores dt{display:grid;place-items:center;width:3rem;height:3rem;border-radius:50%;background:var(--scarlet);color:var(--stock-hi);
  font:400 1.8rem/1 var(--numeral);border:2px solid var(--ink);box-shadow:inset 0 0 0 2px var(--scarlet),inset 0 0 0 3px rgba(243,234,211,.7),2px 2px 0 var(--ink)}
.scores dt span{display:block;transform:translateY(.04em)}
/* the 8 on its own gold plate, riveted at the corners, tilted and run out past the grid (owner) */
.scores .score-admiral{grid-column:1/-1;position:relative;margin:14px -44px 0 -10px;padding:14px 24px 14px 16px;border:2px solid var(--ink);border-radius:12px;
  background:radial-gradient(circle at 11px 11px,#7a5a1a 2.6px,transparent 3.2px),radial-gradient(circle at calc(100% - 11px) 11px,#7a5a1a 2.6px,transparent 3.2px),
    radial-gradient(circle at 11px calc(100% - 11px),#7a5a1a 2.6px,transparent 3.2px),radial-gradient(circle at calc(100% - 11px) calc(100% - 11px),#7a5a1a 2.6px,transparent 3.2px),#dcae4f;
  box-shadow:inset 0 0 0 4px #dcae4f,inset 0 0 0 5px #8a6418,inset 0 0 0 7px #f0d48a,3px 3px 0 var(--ink);transform:rotate(-1.2deg)}
.scores .score-admiral dt{width:3.7rem;height:3.7rem;font-size:2.3rem;background:var(--ink);color:#f0d48a;
  box-shadow:inset 0 0 0 2px var(--ink),inset 0 0 0 3px #dcae4f,2px 2px 0 rgba(28,24,20,.45)}
.scores .score-admiral dd{color:var(--ink);font-size:1.15em;font-weight:600}
@media (max-width:860px){ .scores .score-admiral{margin:18px 6px 0 0} }
.scores dd{margin:0;line-height:1.35;color:var(--ink-2)}
@media (max-width:520px){ .scores{grid-template-columns:1fr} }

/* three ways to play */
.ways{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3.5vw,48px)}
.way{display:flex;flex-direction:column;align-items:flex-start}
.way .zoom,.way>img{margin-bottom:22px}
.way img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:left top;background:var(--stock-hi)}
.way img[src*="phone"]{object-position:center 34%} /* the chart, below the phone page's header */
/* the screenshots (owner): the 3D table from one captain's side; the phone on the flat chart, at the Cutter's arrow and
   the orders panel under it */
.way img.table-3d{object-position:center 58%}
.way img.phone-2d{object-position:center 74%}
.way h3{font-size:var(--fs-1);margin-bottom:.4em}
.way p{color:#d0d6d2;flex:1}
@media (max-width:860px){ .ways{grid-template-columns:1fr;max-width:520px} }

/* fleets */
.fleet-tabs{display:flex;gap:clamp(6px,1.4vw,22px);justify-content:space-between;margin:0 0 36px;padding:0 0 18px;border-bottom:1px solid var(--rule)}
.fleet-tab{flex:1;display:grid;justify-items:center;gap:8px;text-decoration:none;padding:8px 4px 0;position:relative;color:var(--ink-2)}
.fleet-tab img{width:clamp(48px,7vw,86px);height:auto;mix-blend-mode:multiply;transform:rotate(-4deg);opacity:.55;transition:opacity .2s, transform .25s}
.fleet-tab span{font-weight:600;font-size:clamp(.82rem,1.3vw,1.05rem)}
.fleet-tab:hover img,.fleet-tab[aria-selected="true"] img{opacity:1;transform:rotate(0)}
.fleet-tab[aria-selected="true"]{color:var(--fleet)}
.fleet-tab[aria-selected="true"]::after{content:"";position:absolute;left:15%;right:15%;bottom:-20px;height:4px;background:var(--fleet)}
.fleet-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
.fleet-copy{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr) auto;gap:12px 40px;align-items:baseline}
.fleet-copy h3{font:400 var(--fs-3)/1 var(--display);color:var(--fleet);margin:0;letter-spacing:var(--display-track)}
.fleet-copy p{margin:0;color:var(--ink-2)}
.fleet-ribbon{width:100%;height:auto}
@media (max-width:860px){
  .fleet-copy{grid-template-columns:1fr}
  .fleet-tab span{display:none}
  /* the whole fleet, edge to edge: never cropped, so the First Rate and the Admiral stay in view */
  .fleet-ribbon{width:calc(100% + 2 * var(--gutter));max-width:none;margin-left:calc(-1 * var(--gutter))}
}

/* history: the copy, and beside it a print of the Boyne burning at Spithead (site.css .pd) */
.history-tease{min-height:min(92vh,880px);display:flex;align-items:center}
.history-tease .wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,5vw,80px);align-items:center}
.history-copy{grid-column:1;grid-row:1;max-width:560px}
.history-art{grid-column:2;grid-row:1}
.history-copy .lede{color:var(--stock-hi)}
.history-copy p{color:#d0d6d2}
@media (max-width:860px){
  .history-tease{display:block}
  .history-tease .wrap{grid-template-columns:minmax(0,1fr)}
  .history-copy,.history-art{grid-column:auto;grid-row:auto}
  .history-art{max-width:560px}
}

/* built */
.built{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,6vw,96px);align-items:start}
.built-facts{list-style:none;margin:0;padding:0;display:grid;gap:26px;border-left:2px solid var(--ink);padding-left:clamp(20px,3vw,40px)}
.built-facts li{margin:0;color:var(--ink-2);line-height:1.4}
.built-facts b{display:block;font:400 clamp(2.4rem,4.4vw,3.6rem)/1 var(--numeral);color:var(--ink);margin-bottom:4px}
@media (max-width:860px){ .built{grid-template-columns:1fr} }

/* editions */
.editions-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,72px);align-items:center}
.edition-hero img{width:100%}
.edition-hero .set{display:block;height:auto;margin:-4% -6% -2% -4%;width:110%;max-width:none}   /* the whole set on the paper, no frame (owner) */
@media (max-width:860px){ .edition-hero .set{width:104%;margin:0 -2%} }
.edition-list>div:not(.actions){border-top:1px solid var(--rule);padding:16px 0 4px}
.edition-list h3{font-size:var(--fs-1);margin-bottom:.25em}
.edition-list p{color:var(--ink-2)}
.edition-list .actions{margin-top:24px}
@media (max-width:860px){ .editions-grid{grid-template-columns:1fr} }

/* the recruiting bill */
.bill{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,6vw,96px);align-items:center}
.bill-ladder{margin-top:28px;color:#c9cfcc}
.bill-form .pull{margin:0 0 clamp(26px,3vw,36px)}
.bill-form .pull p{font-size:clamp(1.6rem,1.25rem + 1.3vw,2.2rem)}
@media (max-width:860px){ .bill{grid-template-columns:1fr} .bill-poster{max-width:480px;margin:10px auto} }

/* questions */
.faq-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,5vw,80px)}
.faq-grid h2{font-size:var(--fs-3)}
.faq-grid p{color:var(--ink-2)}
@media (max-width:860px){ .faq-grid{grid-template-columns:1fr} }
.mh-hook span{display:inline-block} /* one line, with its stops: the one headline that keeps them (owner) */
.way img.sheet{object-position:center} /* the whole chart, its heart in the card: the Capital, the harbors, the anchorages */
.frieze{margin:0 0 clamp(28px,4vw,48px)}
.frieze img{width:100%;height:auto}
.fleet-tab span{white-space:nowrap}
.ship-strip.bucc{padding:6px 0}

/* scoring and the storm: a compass rose large beside the copy, off the right edge (art/make_compass.py, the colour
   finish: flat tints outlined in ink over an embossed graticule, transparent, fading out, already turned 15 degrees) */
.storm-splash{overflow:hidden;overflow:clip;clip-path:inset(-8px 0);isolation:isolate;min-height:min(112vh,1060px);display:flex;align-items:center}
.storm-splash .wrap{position:relative;z-index:1}
/* the rose large, hung off the right edge, its letters stopping short of the copy (owner) */
.splash{--cw:min(98vw,1400px);position:absolute;z-index:0;top:50%;left:max(calc(640px - var(--cw) * .165), calc(100vw - var(--cw) * .75));width:var(--cw);aspect-ratio:1/1;transform:translateY(-50%);pointer-events:none}
.splash img{width:100%;height:100%;object-fit:contain;opacity:.4}   /* the rose at 40% (owner) */
.splash-copy{max-width:520px} /* the rose stays to the right of the copy: no paper glow needed behind it */
@media (max-width:860px){
  /* on a phone the rose is the section's background, behind the copy, not a block of its own (owner) */
  .storm-splash{display:block;min-height:0}
  .splash{top:50%;left:12vw;width:150vw;transform:translateY(-50%)}
  .splash img{opacity:.18}   /* lighter behind the copy on a phone (owner) */
  .splash-copy{margin-left:0;padding:0;background:none}
}

#one-minute .compare{display:block;font-family:var(--fell);font-style:italic;color:var(--gold);margin-bottom:.35em}

/* play at your own pace: the steps beside a real phone, with the notes it shows */
.pace{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(36px,6vw,96px);align-items:center}
.pace-copy h2{margin-bottom:.35em}
.pace-copy .lede{margin-bottom:28px}
.pace-steps{list-style:none;margin:0 0 22px;padding:0;display:grid;gap:18px;counter-reset:pace}
.pace-steps li{margin:0;counter-increment:pace;display:grid;grid-template-columns:2.2rem minmax(0,1fr);gap:4px 14px}
.pace-steps li::before{content:counter(pace);grid-row:span 2;font:400 2.2rem/1 var(--numeral);color:var(--scarlet)}
.pace-steps h3{margin:2px 0 .2em;font-size:var(--fs-1)}
.pace-steps p{margin:0;color:var(--ink-2)}
.pace-copy .fine{margin-bottom:22px}
.pace-art{position:relative;margin:0 auto;width:min(100%,360px);padding:0 0 0 clamp(0px,4vw,40px)}
.pace-phone{width:min(260px,72vw);margin-left:auto;padding:8px;background:#121416;border-radius:34px;box-shadow:0 30px 50px -26px rgba(40,24,10,.65)}
.pace-phone img{width:100%;height:auto;border-radius:27px}
.pace-notes{list-style:none;margin:0;padding:0;position:absolute;left:0;top:14%;width:min(270px,74%);display:grid;gap:10px}
.pace-notes li{margin:0;display:grid;gap:2px;padding:11px 14px 12px 46px;position:relative;border-radius:14px;background:rgba(250,246,236,.96);
  border:1px solid rgba(28,24,20,.12);box-shadow:0 14px 26px -16px rgba(40,24,10,.6);backdrop-filter:blur(6px)}
.pace-notes li::before{content:"";position:absolute;left:12px;top:12px;width:24px;height:24px;border-radius:6px;background:url(../img/icon.svg) center/cover no-repeat}
.pace-notes li:nth-child(2){margin-left:18px}
.pace-notes li:nth-child(3){margin-left:6px}
.pn-app{font:600 .82rem/1.2 var(--text);color:var(--ink)}
.pn-body{font-size:.92rem;line-height:1.3;color:var(--ink-2)}
.pace-art figcaption{margin-top:16px;text-align:right}
@media (max-width:860px){
  .pace{grid-template-columns:1fr}
  .pace-art{width:min(100%,380px)}
}
@media (max-width:420px){
  .pace-notes{position:relative;top:auto;width:100%;margin:-60px 0 0}
  .pace-notes li:nth-child(n){margin-left:0}
  .pace-phone{margin:0 auto}
}
