/*
Theme Name: Tom Stahler Editorial v1.7
Theme URI: https://tomstahler.com/
Author: Tom Stahler / custom theme
Description: A purpose-built editorial and portfolio WordPress theme centered on Tom's Take and the Twisted Stahler mark.
Version: 1.7.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: toms-take
License: GPL-2.0-or-later
*/
:root{--navy:#08152f;--ink:#101c35;--blue:#124bdf;--red:#e52939;--muted:#607089;--line:#dbe3ef;--paper:#f4f6fb;--silver:#b7c8db}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:white;color:var(--ink);font:17px/1.7 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}a{color:var(--blue)}img{max-width:100%;height:auto}button,input,textarea{font:inherit}h1,h2,h3{line-height:1.14;letter-spacing:-.035em}h1{font-size:clamp(2.5rem,5.5vw,5.2rem)}h2{font-size:clamp(1.8rem,3vw,2.65rem)}.wrap{max-width:1190px;margin:0 auto;padding:0 28px}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:20px;top:20px;background:white;z-index:1000;padding:10px}.site-head{position:relative;background:var(--navy);color:white;z-index:5;border-bottom:2px solid #223c70}.head-inner{display:flex;align-items:center;justify-content:space-between;min-height:90px;gap:20px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:white}.brand img{width:64px;height:64px;object-fit:contain}.brand-name{font-size:1.25rem;font-weight:850;line-height:1.05;letter-spacing:.02em}.brand-small{font-size:.64rem;display:block;color:#aebbd4;font-weight:600;letter-spacing:.19em;text-transform:uppercase;margin-top:6px}.menu{display:flex;align-items:center;list-style:none;gap:27px;margin:0;padding:0}.menu a{color:#e9eefc;text-decoration:none;font-weight:650;font-size:.87rem}.menu a:hover,.menu a:focus{color:#fff;text-decoration:underline;text-underline-offset:8px}.menu-toggle{display:none;border:1px solid #6a80ab;background:transparent;color:white;border-radius:6px;padding:7px 12px}.hero{position:relative;overflow:hidden;color:white;background:radial-gradient(circle at 88% 12%,#194ba4 0%,transparent 32%),linear-gradient(117deg,#06112b 0%,#0e2761 65%,#071431 100%)}.hero:after{content:'';position:absolute;width:55vw;height:150%;right:-21vw;top:-35%;transform:rotate(24deg);border-left:24px solid rgba(220,232,255,.11);border-right:17px solid rgba(229,41,57,.55);pointer-events:none}.hero-content{position:relative;z-index:1;min-height:390px;display:grid;align-content:center;padding-top:66px;padding-bottom:76px}.eyebrow{font-weight:850;letter-spacing:.19em;text-transform:uppercase;color:#87b3ff;font-size:.73rem}.hero h1{max-width:800px;margin:14px 0 15px}.hero h1 em{font-style:normal;color:#fff;border-bottom:7px solid var(--red)}.hero p{max-width:690px;margin:12px 0 30px;color:#c7d4e8;font-size:1.16rem;line-height:1.6}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 22px;background:var(--red);border-radius:5px;color:white;text-decoration:none;font-weight:760;font-size:.9rem}.btn:hover{background:#b81627}.btn-light{background:white;color:var(--navy)}.btn-light:hover{background:#e7efff}.feature-band{border-bottom:1px solid var(--line);background:#f9fbfe}.feature-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:19px;padding-bottom:19px}.feature-band p{margin:0;color:#556783;font-size:.9rem}.feature-band strong{color:var(--navy)}.section{padding:70px 0}.section.alt{background:var(--paper)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:30px}.section-head h2{margin:6px 0 0}.section-head a{font-size:.87rem;font-weight:800}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{background:white;box-shadow:0 8px 32px rgba(16,35,80,.06);border:1px solid var(--line);border-radius:9px;overflow:hidden}.card-image{height:190px;width:100%;object-fit:cover;background:linear-gradient(130deg,#081636,#154de3 67%,#e52939)}.card-body{padding:24px}.card-meta,.meta{color:#63738a;font-size:.79rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.card h3{margin:10px 0;font-size:1.47rem}.card h3 a{color:var(--navy);text-decoration:none}.card h3 a:hover{color:var(--blue)}.card p{font-size:.91rem;line-height:1.7;color:#607089}.two-up{display:grid;grid-template-columns:1.15fr 1fr;gap:75px;align-items:center}.eyeline{width:70px;height:5px;background:linear-gradient(90deg,var(--blue) 60%,var(--red) 60%);margin-bottom:19px}.prose{max-width:785px}.prose p{margin:0 0 1.3em}.prose blockquote{margin:35px 0;padding:7px 26px;border-left:5px solid var(--red);font-size:1.2rem;color:#294167}.portfolio-list{display:grid;gap:15px}.portfolio-item{padding:18px 22px;border:1px solid var(--line);border-radius:6px;background:white;display:flex;justify-content:space-between;align-items:center;gap:16px}.portfolio-item a{font-weight:750}.footer{background:#07132b;color:#d5dff4;padding:40px 0}.footer-flex{display:flex;justify-content:space-between;gap:20px;align-items:center}.footer a{color:#c7dbff}.footer p{font-size:.82rem;margin:8px 0;color:#aabbd6}.article-head{padding:65px 0 30px}.article-head h1{margin:12px 0 20px;max-width:980px}.article-body{padding-bottom:80px}.article-body img{border-radius:6px}.article-body h2{margin-top:1.6em}.postnav{padding-top:32px;border-top:1px solid var(--line)}.postnav a{font-weight:750}.share{margin:36px 0;padding:20px;background:var(--paper);border-left:4px solid var(--blue)}.share a{margin-right:15px}.standard-page{padding:65px 0 85px}.pagination{margin-top:40px}.pagination .page-numbers{padding:7px 12px;border:1px solid var(--line);margin-right:5px;text-decoration:none}.pagination .current{background:var(--navy);color:white}.empty{padding:22px;background:white;border:1px solid var(--line);border-radius:8px}.logo-panel{background:linear-gradient(140deg,#08112a,#14377b);border-radius:13px;padding:42px;text-align:center}.logo-panel img{width:290px;filter:drop-shadow(0 15px 15px #0004)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:850px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-up{grid-template-columns:1fr;gap:32px}.menu{gap:12px}.menu a{font-size:.78rem}.brand img{width:55px;height:55px}}
@media(max-width:640px){.wrap{padding:0 19px}.head-inner{min-height:76px}.menu-toggle{display:block}.menu{display:none;position:absolute;top:76px;left:0;right:0;background:#0b214d;padding:22px 24px;flex-direction:column;align-items:flex-start}.menu.open{display:flex}.menu a{font-size:1rem}.grid{grid-template-columns:1fr}.hero-content{min-height:325px;padding-top:45px;padding-bottom:50px}.feature-band .wrap{display:block}.section{padding:46px 0}.footer-flex{display:block}.logo-panel img{width:235px}.article-head{padding:40px 0 25px}}

/* 1.1 editorial homepage */
.site-head{border-bottom:2px solid #18366b}.head-inner{min-height:84px}.brand-name{font-size:clamp(1.25rem,2.4vw,2rem);letter-spacing:.065em}.brand-small{letter-spacing:.11em}.brand img{width:70px;height:70px}
.canam-masthead{height:clamp(310px,34vw,470px);position:relative;background:#0a1428 url('assets/canam-sunset.jpg') center 42%/cover no-repeat;color:#fff}
.canam-masthead:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,10,25,.10) 0%,rgba(3,10,25,.02) 43%,rgba(3,10,25,.16) 100%)}
.masthead-inner{position:relative;height:100%;display:flex;align-items:flex-start;justify-content:flex-end;flex-direction:column;padding-bottom:23px}
.masthead-label{font-size:.73rem;letter-spacing:.18em;font-weight:900;padding:6px 12px;background:#cf1924}
.masthead-inner p{font-size:clamp(1rem,2vw,1.45rem);max-width:520px;margin:10px 0 11px;font-weight:750;text-shadow:0 2px 10px #000}
.masthead-inner .btn{padding:8px 16px;font-size:.8rem}
.latest-section{padding-top:58px}.latest-section h1{font-family:Georgia,serif;font-size:clamp(2rem,3.7vw,3.4rem);margin:4px 0}.section-summary{margin:5px 0;color:var(--muted)}
.lead-story{display:grid;grid-template-columns:1.22fr 1fr;gap:32px;align-items:center;padding-bottom:34px;border-bottom:1px solid var(--line)}
.lead-photo{width:100%;background:#122347;min-height:310px;overflow:hidden}.lead-photo img{width:100%;height:370px;object-fit:cover;display:block}.lead-copy h2{font-family:Georgia,serif;font-size:clamp(2rem,3.15vw,3.3rem);margin:9px 0 14px}.lead-copy h2 a{text-decoration:none;color:var(--ink)}.lead-copy p{color:#47536a;font-size:1rem}.lead-copy small{display:block;margin-top:19px;color:var(--muted)}.lead-copy .eyebrow{color:#cb1a2a}.preview-note{color:#777;font-size:.82rem;font-style:italic}.secondary-articles{margin-top:26px}.photo-placeholder{display:flex;align-items:center;justify-content:center;height:370px;background:linear-gradient(135deg,#061129,#0d367b)}.photo-placeholder img{width:180px;height:180px;object-fit:contain}
.nav-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-bottom:50px}.nav-tiles a{padding:24px 18px;min-height:140px;background:linear-gradient(135deg,#071529,#183361);color:#fff;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end}.nav-tiles span{font-size:.66rem;color:#8ab4ff;letter-spacing:.16em;font-weight:800}.nav-tiles strong{font-size:1.45rem;line-height:1.3}.nav-tiles small{font-size:.73rem;color:#b8c9e6}
@media(max-width:800px){.lead-story{grid-template-columns:1fr}.lead-photo img{height:330px}.nav-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.canam-masthead{background-position:34% center}}
@media(max-width:640px){.canam-masthead{height:315px;background-position:25% center}.brand-name{font-size:1.13rem}.brand-small{font-size:.48rem;letter-spacing:.05em}.brand img{width:52px;height:52px}.lead-photo img{height:240px}.lead-photo{min-height:240px}.nav-tiles{gap:8px}.nav-tiles strong{font-size:1.16rem}.nav-tiles a{padding:18px 12px}.masthead-inner{padding-bottom:16px}.masthead-inner p{font-size:.95rem;line-height:1.35}}

/* v1.2: Single site brand, Tom’s Take is the column rather than the website name. */
.masthead-strapline{font-size:clamp(1.2rem,2.1vw,2rem)!important;letter-spacing:.10em;text-transform:uppercase;max-width:500px!important;margin:0 0 12px!important;}
.latest-section .section-head h1{font-size:clamp(2.2rem,4.5vw,4rem);margin:6px 0 5px}
.latest-section .section-summary{font-size:1.1rem;margin:0;color:#52637c}

/* v1.3 — responsive homepage visuals, editable in Customizer */
.canam-masthead{background-position:center center;background-size:cover;background-repeat:no-repeat}
.canam-masthead:before{background:linear-gradient(90deg,rgba(3,10,25,.08),rgba(3,10,25,0) 30%,rgba(3,10,25,.05) 100%)}
.nav-tiles a{background-size:cover;background-position:center;min-height:205px;border-radius:4px;transition:transform .18s ease,filter .18s ease}
.nav-tiles a:hover{transform:translateY(-3px);filter:brightness(1.08)}
.nav-tiles span,.nav-tiles strong,.nav-tiles small{text-shadow:0 1px 8px rgba(0,0,0,.8)}
.nav-tiles span{color:#c9dcff}.nav-tiles small{color:#f0f4ff}
.about-photo{overflow:hidden;border-radius:10px;background:#0b1b36;min-height:260px}
.about-photo img{display:block;width:100%;height:370px;object-fit:cover;object-position:center}
.secondary-articles{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));}
@media(max-width:800px){.nav-tiles a{min-height:180px}.about-photo img{height:320px}}
@media(max-width:640px){.nav-tiles a{min-height:155px}.about-photo img{height:250px}}

/* v1.4 — selected masthead image as complete artwork */
.masthead-art{padding:0;min-height:0}
.canam-masthead{background-position:center center;background-size:cover}

/* v1.5: full-width masthead artwork, never cropped */
.canam-masthead {height:auto!important; min-height:0!important; background:none!important; overflow:hidden; line-height:0;}
.canam-masthead::before {content:none!important;}
.full-masthead-art {display:block; width:100%; height:auto; max-width:none; object-fit:contain;}
@media (max-width:640px){.canam-masthead {height:auto!important; background:none!important;} .full-masthead-art {width:100%;height:auto;}}

/* v1.6 - Published Elsewhere author archives */
.publication-section{padding:65px 0;background:#f2f5fa;border-top:1px solid #d8e2ee}
.publication-section h2{margin:8px 0 7px;font-family:Georgia,serif}
.publication-intro{color:#53647a;max-width:730px;margin:0 0 28px}
.publication-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.publication-link{display:flex;flex-direction:column;gap:10px;min-height:195px;padding:23px 19px;text-decoration:none;background:#0a1b38;color:white;border-radius:6px;border-top:4px solid #e42937;transition:transform .2s,background .2s}
.publication-link:hover,.publication-link:focus{background:#123366;color:white;transform:translateY(-2px)}
.publication-link strong{font-size:1.2rem;line-height:1.25}.publication-link span{font-size:.85rem;color:#d3dff0;line-height:1.45}.publication-link em{font-size:.8rem;font-style:normal;font-weight:750;margin-top:auto;color:#9cbeff}
@media(max-width:900px){.publication-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.publication-grid{grid-template-columns:1fr}.publication-link{min-height:145px}}

/* Media archive */
.tt-media-intro{max-width:760px;color:#536278;margin-bottom:25px}.tt-media-section{margin:38px 0}.tt-media-section h2{font-family:Georgia,serif;margin-bottom:15px}.tt-media-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.tt-media-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:23px;box-shadow:0 8px 24px rgba(16,35,80,.05)}.tt-media-card h3{font-size:1.35rem;margin:5px 0 12px}.tt-media-card p{font-size:.95rem;color:#526079}.tt-media-card .media-type{color:#b31b31;text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.7rem}.tt-media-card a{font-weight:750}.tt-video{position:relative;aspect-ratio:16/9;background:#07152d;border-radius:6px;overflow:hidden;margin-bottom:15px}.tt-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.tt-media-links{display:flex;gap:12px;flex-wrap:wrap}.tt-media-links a{font-size:.92rem}@media(max-width:690px){.tt-media-cards{grid-template-columns:1fr}}
