/* SAILING ARKYLA — layer on top of alt.css (shared with jameskenning.com).
   Adds a long-form reading layout for the logs, photo rows that keep each
   frame uncropped, news, press cuttings and shop. */

:root{ --sea:#2E5E6E; }
a{color:inherit;}
main{display:block;}

/* Page heads */
.log-head{padding:clamp(40px,6vw,72px) 0 clamp(28px,4vw,44px); border-bottom:0;}
.log-head h1{font-family:'Fraunces',serif; font-weight:300; font-size:clamp(36px,5.2vw,62px); line-height:1.06; max-width:900px; margin:10px 0 16px;}
.log-head p{color:var(--muted); font-size:clamp(17px,1.6vw,19px); max-width:720px;}
.log-head .eyebrow,.log-head .eyebrow a{font-family:'IBM Plex Mono',monospace; font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:var(--gold); text-decoration:none;}
.log-head .eyebrow a:hover{text-decoration:underline;}
.log-hero{aspect-ratio:21/9; margin-bottom:clamp(36px,5vw,64px);}
.log-hero img{width:100%; height:100%; object-fit:cover;}
@media(max-width:700px){ .log-hero{aspect-ratio:4/3;} }

/* Reading column */
.prose{max-width:760px; margin:0 auto; padding-bottom:var(--gap);}
.prose p,.prose li{font-size:18px; line-height:1.78; color:#2B2D27; margin:0 0 1.15em;}
.prose p a,.prose li a,.notice a{color:var(--sea); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px;}
.prose strong{font-weight:500; color:var(--paper);}
.prose h2{font-size:clamp(26px,3vw,34px); line-height:1.2; margin:2.2em 0 .7em; scroll-margin-top:120px; padding-top:.9em; border-top:1px solid var(--line);}
.prose > h2:first-child,.toc + h2{border-top:0; padding-top:0; margin-top:.8em;}
.prose h3{font-family:'Fraunces',serif; font-weight:400; font-size:21px; margin:1.8em 0 .6em;}
.prose ul{margin:0 0 1.4em 1.2em; padding:0;}
.prose ul li{margin-bottom:.4em;}
@media(max-width:600px){ .prose p,.prose li{font-size:17px; line-height:1.72;} }

/* Contents list for long logs */
.toc{border:1px solid var(--line); background:var(--ink-2); padding:22px 26px 18px; margin:0 0 48px;}
.toc-head{font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--gold); margin-bottom:12px;}
.toc ol{margin:0; padding-left:1.3em; columns:2; column-gap:32px;}
.toc li{font-size:14.5px; line-height:1.45; margin:0 0 8px; color:var(--muted); break-inside:avoid;}
.toc a{color:var(--paper); text-decoration:none;}
.toc a:hover,.toc a.on{color:var(--gold);}
@media(max-width:640px){ .toc ol{columns:1;} }

/* Photo rows: same width as the text column, equal heights, no cropping */
.lg{width:100%; margin:32px 0 40px;}
.lg.narrow{width:66%; margin-left:auto; margin-right:auto;}
.jrow{display:flex; gap:8px; align-items:flex-start;}
.jrow + .jrow{margin-top:8px;}
.lg figure{margin:0; min-width:0;}
.lg img,.press-grid img,.news-fig img{width:100%; height:auto; display:block; background:var(--ink-2); cursor:zoom-in;}
.lg figcaption,.press-grid figcaption{font-family:'IBM Plex Mono',monospace; font-size:11.5px; letter-spacing:.03em; color:var(--muted); margin-top:7px; line-height:1.4;}
@media(max-width:640px){
  .jrow{flex-wrap:wrap;}
  .jrow figure{flex:1 1 100% !important;}
  .jrow + .jrow{margin-top:10px;}
  .lg figure + figure{margin-top:4px;}
}

/* Pager between logs / technical pages */
.pager{display:grid; grid-template-columns:1fr auto 1fr; gap:20px; align-items:center; max-width:1120px; margin:0 auto var(--gap); padding-top:28px; border-top:1px solid var(--line);}
.prose .pager{margin-top:48px; margin-bottom:0;}
.pager a{text-decoration:none; color:var(--paper);}
.pager a span{display:block; font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--gold); margin-bottom:4px;}
.pg-next{text-align:right;}
.pg-all{font-size:14px; color:var(--muted) !important; border-bottom:1px solid var(--line);}
.pager a:hover{color:var(--gold);}
@media(max-width:640px){ .pager{grid-template-columns:1fr 1fr;} .pg-all{grid-column:1/-1; grid-row:2; justify-self:center;} }

/* Cards (logs, technical) */
.t-card{text-decoration:none; color:inherit; display:block;}
.t-card .j-meta{margin-bottom:4px;}
.t-card h3{font-size:23px; margin-bottom:6px;}
.t-card p{color:var(--muted); font-size:14.5px;}
.t-card:hover h3{color:var(--gold);}
.design{margin-top:var(--gap);}
.design .lg{max-width:760px; margin-left:auto; margin-right:auto;}
@media(max-width:640px){ .lg.narrow{width:100%;} }

/* News */
.news-body p{max-width:680px;}
.news-fig{max-width:420px; margin:8px 0 6px;}
.news-item{scroll-margin-top:110px;}
.news .more{margin-top:24px;}

/* About: awards and press cuttings */
.awards li span{font-family:'IBM Plex Mono',monospace;}
.awards-home{padding-bottom:var(--gap);}
.prose .awards li{font-size:15px; margin:0;}
.press-list{margin:28px 0 0;}
.press-article{display:grid; grid-template-columns:5fr 6fr; gap:18px; align-items:start; padding:28px 0; border-top:1px solid var(--line);}
.press-article figure{margin:0;}
.press-article img{width:100%; height:auto; display:block; border:1px solid var(--line); cursor:zoom-in; background:var(--ink-2);}
.prose .press-pages h3{margin:0 0 12px; font-size:20px;}
.press-pages-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px; align-items:start;}
@media(max-width:560px){ .press-article{grid-template-columns:1fr;} .press-cover{max-width:300px;} }
.press-grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:18px; max-width:1120px; margin:0 auto var(--gap);}
.press-grid figure{margin:0;}
.press-grid img{border:1px solid var(--line);}

/* Notices */
.notice{border-left:3px solid var(--gold); background:var(--ink-2); padding:16px 20px; font-size:16px; margin:28px 0;}

/* Shop */
.shop-grid{display:grid; grid-template-columns:1fr 1fr; gap:48px; margin-bottom:var(--gap);}
.shop-item h2{font-size:30px; margin:6px 0 10px;}
.shop-item p{color:var(--muted); margin-bottom:22px; max-width:460px;}
.shop-item img,.shop-ph{width:100%; aspect-ratio:4/3; object-fit:cover; margin-bottom:22px; background:var(--ink-2);}
.shop-ph{display:flex; align-items:center; justify-content:center; border:1px dashed var(--line); color:var(--muted); font-family:'IBM Plex Mono',monospace; font-size:12px; letter-spacing:.14em; text-transform:uppercase;}
.contact-btn{display:inline-block; text-decoration:none;}
@media(max-width:760px){ .shop-grid{grid-template-columns:1fr;} }

/* Home: press covers */
.press-thumbs{display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:28px 22px; align-items:start;}
.press-thumb{display:block; text-decoration:none; color:inherit;}
.press-thumb img{width:100%; height:auto; display:block; border:1px solid var(--line); transition:transform .4s ease;}
.press-thumb:hover img{transform:translateY(-4px);}
.press-thumb span{display:block; font-size:13px; color:var(--muted); margin-top:10px; line-height:1.4;}
.press-thumb:hover span{color:var(--gold);}
.collections .more{margin-top:32px;}
.press-article{scroll-margin-top:110px;}

/* About: boat and skipper side by side */
.about-cols{display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start; max-width:1120px; margin:0 auto;}
.about-cols .prose{max-width:none; margin:0; padding-bottom:0;}
.about-cols .prose > h2{border-top:0; padding-top:0; margin:4px 0 22px;}
.about-cols .prose p{font-size:17px;}
.about-cols .lg{margin-top:0;}
.about-cols .awards{margin:8px 0 28px;}
.about-cols .awards li{grid-template-columns:150px 1fr;}
.about-more{max-width:1120px; margin:56px auto var(--gap); padding-top:24px; border-top:1px solid var(--line); color:var(--muted);}
.about-more a{color:var(--sea); text-decoration:underline; text-underline-offset:3px;}
@media(max-width:900px){ .about-cols{grid-template-columns:1fr; gap:48px;} }
/* nine menu items: tighten spacing on mid-width screens */
@media(min-width:861px) and (max-width:1200px){ .navlinks{gap:20px; font-size:13.5px;} }

/* About: ensign block styled like the column heads */
.about-cols .ensign{margin-top:48px; padding-top:32px; border-top:1px solid var(--line);}
.about-cols .ensign > h2{border-top:0; padding-top:0; margin:4px 0 22px;}

/* Shop: images framed to the same shape, nothing cropped */
.shop-img{aspect-ratio:4/3; display:flex; align-items:center; justify-content:center; background:var(--ink-2); margin-bottom:22px; overflow:hidden;}
.shop-img img{max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; margin:0; aspect-ratio:auto; background:none;}
.shop-img img.shop-logo{max-height:88%;}
.shop-item .shop-sub{font-family:'Fraunces',serif; font-style:italic; color:var(--paper); margin:-4px 0 10px;}

/* Shop: book and prints, sharing the wildlife site's book layout */
.shop-book{border-top:0; padding-top:0;}
.shop-book .book-layout{margin-bottom:0;}
.book-inside-wrap{margin-top:56px;}
.shop-prints{margin-top:var(--gap); padding-bottom:var(--gap);}
.shop-prints .book-layout{margin-bottom:0;}
.prints-logo img{width:100%; height:auto; display:block;}
.buy-btn{text-decoration:none;}

.shop-book .status-text{margin-bottom:24px;}
.shop-prints .book-subtitle{margin-bottom:14px;}
