.tf{--bg:#06122a;--paper:#e6decf;--paper-2:#d9cfbc;--ink:#06122a;--ink-soft:#3b4256;--on-bg:#e6decf;--accent:#b22234;--accent-ink:#fff;--tfd:"Playfair Display",Georgia,serif;--tft:"EB Garamond",Georgia,serif;--s-small:.875rem;--s-body:clamp(1.0625rem,1rem + .25vw,1.1875rem);--s-lead:clamp(1.25rem,1.1rem + .6vw,1.5rem);--s-head:clamp(2rem,1.2rem + 2.6vw,3.25rem);--m:clamp(16px,2.2vw,32px);--ease:cubic-bezier(.2,.7,.2,1);background:var(--bg);color:var(--on-bg);font-family:var(--tft);font-size:var(--s-body);line-height:1.5;overflow-x:clip}
.tf *{box-sizing:border-box}
.tf h1,.tf h2,.tf h3,.tf p,.tf ul,.tf ol,.tf figure{margin:0;padding:0}
.tf img{display:block;max-width:100%;height:auto}
.tf a{color:inherit}
.tf :focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.tf h1,.tf h2,.tf h3{font-family:var(--tfd);font-weight:700;line-height:1.02;letter-spacing:-.02em}
.tf-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;background:var(--accent);color:var(--accent-ink)!important;text-decoration:none;font-size:1.125rem;font-weight:500;transition:transform .2s var(--ease),background .2s}
.tf-btn:hover{background:#8f1a29;transform:translateY(-2px)}
.tf-btn.tf-ink{background:var(--ink);color:var(--paper)!important}.tf-btn.tf-ink:hover{background:#13244a}
.tf-tl{text-decoration:underline;text-underline-offset:4px}.tf-tl:hover{color:var(--accent)}
.tf-hero{position:relative;min-height:92svh;display:grid;place-items:center;padding:48px var(--m);overflow:hidden}
.tf-dim{position:absolute;inset:0;background:rgba(6,18,42,.55)}
.tf-hero>.tf-bgimg{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;animation:tfdrift 30s ease-in-out infinite alternate}
@keyframes tfdrift{from{transform:scale(1.03)}to{transform:scale(1.12)}}
.tf-sheet{position:relative;z-index:1;background:var(--paper);color:var(--ink);width:min(1180px,100%);padding:clamp(24px,5vw,72px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 28px;animation:tfrise .9s var(--ease) both}
@keyframes tfrise{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
.tf-mast{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:14px;margin-bottom:22px;border-bottom:6px solid var(--ink)}
.tf-mast img{width:56px;height:56px;margin-left:auto}
.tf-t{font-family:var(--tfd);font-weight:800;font-size:clamp(1.75rem,1rem + 3.4vw,4rem)!important;line-height:1;text-align:center;flex:1}
.tf-side{font-size:var(--s-small);width:140px;line-height:1.3}
.tf-side.tf-r{text-align:right}
.tf-motto{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;font-size:1rem;margin-bottom:26px!important;flex-wrap:wrap}
.tf-motto b{font-weight:600}
.tf-leadh{grid-column:1/-1;font-size:clamp(1.375rem,.8rem + 2.6vw,3rem);margin-bottom:24px!important}
.tf-leadh a{text-decoration:none}.tf-leadh a:hover{text-decoration:underline}
.tf-leadart{grid-column:1/8}
.tf-leadart img{width:100%;aspect-ratio:16/9;object-fit:cover}
.tf-leadtx{grid-column:8/13;display:flex;flex-direction:column;gap:18px}
.tf-leadtx p{font-size:var(--s-lead);line-height:1.32}
.tf-leadtx .tf-by{font-size:1rem;color:var(--ink-soft)}
.tf-latest{grid-column:1/-1;margin-top:26px;padding-top:22px;border-top:6px solid var(--ink)}
.tf-latest h2{font-size:1.25rem;margin-bottom:14px}
.tf-latest ul{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.tf-latest a{display:flex;gap:14px;align-items:flex-start;text-decoration:none;font-weight:600;line-height:1.25}
.tf-latest a:hover span{text-decoration:underline}
.tf-latest img{width:96px;aspect-ratio:16/9;object-fit:cover;flex:none}
.tf-desks{padding:140px var(--m);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px}
.tf-word{grid-column:1/6;container-type:inline-size}
.tf-word h2{font-size:25cqw;line-height:.85;letter-spacing:-.03em}
.tf-word p{font-size:var(--s-lead);margin-top:32px;max-width:28ch}
.tf-bars{grid-column:7/13;display:flex;flex-direction:column;gap:6px}
.tf details{background:#0f2045;transition:background .2s}
.tf details[open]{background:var(--paper);color:var(--ink)}
.tf summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:64px;padding:0 clamp(20px,3vw,32px);font-size:var(--s-lead)}
.tf summary::-webkit-details-marker{display:none}
.tf summary b{font-family:var(--tfd);font-size:1.5rem}
.tf summary span{font-size:1rem;margin-left:auto}
.tf summary::after{content:"+";font-size:1.75rem;margin-left:16px}.tf details[open] summary::after{content:"–"}
.tf details ul{list-style:none;padding:4px clamp(20px,3vw,32px) 22px}
.tf details li{display:flex;justify-content:space-between;gap:20px;padding:10px 0;font-size:1.0625rem}
.tf details li a{text-decoration:none;font-weight:500}.tf details li a:hover{text-decoration:underline}
.tf details li span{flex:none;opacity:.85}
.tf details li.tf-desklink a{text-decoration:underline;text-underline-offset:4px}
.tf-show{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;min-height:80svh;background:var(--paper);color:var(--ink)}
.tf-tabs{grid-column:2;grid-row:1;display:flex;flex-wrap:wrap;gap:4px 28px;font-size:1.125rem;padding:clamp(24px,5vw,72px) clamp(24px,5vw,72px) 0}
.tf-tabs button{font:inherit;background:none;border:0;color:var(--ink);opacity:.55;cursor:pointer;padding:8px 0;min-height:44px;transition:opacity .2s}
.tf-tabs button[aria-selected=true]{opacity:1;font-weight:600;text-decoration:underline;text-underline-offset:6px}
.tf-tabs button:hover{opacity:1}
.tf-panel{grid-column:1/-1;grid-row:1/3;display:grid;grid-template-columns:1fr 1fr}
.tf-panel[hidden]{display:none}
.tf-plate{padding:clamp(24px,5vw,72px);display:grid;place-items:center}
.tf-plate img{width:100%;aspect-ratio:1;object-fit:cover}
.tf-side2{padding:clamp(96px,10vw,140px) clamp(24px,5vw,72px) clamp(24px,5vw,72px);display:flex;flex-direction:column;justify-content:space-between;gap:40px}
.tf-showh{font-size:clamp(1.375rem,.8rem + 1.9vw,2.5rem)}
.tf-dek{font-size:var(--s-lead);max-width:34ch;margin-top:40px!important;line-height:1.35}
.tf-cells{display:grid;grid-template-columns:1fr 1fr}
.tf-cells a{min-height:72px;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:1.125rem;font-weight:500;transition:background .2s}
.tf-cells a:first-child{background:var(--ink);color:var(--paper)}.tf-cells a:first-child:hover{background:#13244a}
.tf-cells a:last-child{background:var(--paper-2)}.tf-cells a:last-child:hover{background:#cbbfa8}
.tf-picks{padding:140px var(--m);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px;align-items:center}
.tf-art{grid-column:1/6}
.tf-art img{width:100%;aspect-ratio:4/5;object-fit:cover}
.tf-menu{grid-column:7/13;background:var(--paper);color:var(--ink);padding:clamp(48px,5vw,72px) clamp(24px,5vw,72px);clip-path:polygon(0 12px,4% 0,8% 12px,12% 0,16% 12px,20% 0,24% 12px,28% 0,32% 12px,36% 0,40% 12px,44% 0,48% 12px,52% 0,56% 12px,60% 0,64% 12px,68% 0,72% 12px,76% 0,80% 12px,84% 0,88% 12px,92% 0,96% 12px,100% 0,100% 100%,0 100%)}
.tf-menu h2{font-size:var(--s-head);text-align:center;margin-bottom:40px}
.tf-menu ol{list-style:none}
.tf-menu li a{display:flex;align-items:baseline;gap:10px;padding:12px 0;text-decoration:none}
.tf-n{font-size:1.1875rem;font-weight:500;max-width:30ch}
.tf-menu li a:hover .tf-n{text-decoration:underline}
.tf-dots{flex:1;border-bottom:4px dotted var(--ink-soft);min-width:24px;transform:translateY(-4px)}
.tf-v{flex:none;font-size:1rem;color:var(--ink-soft)}
.tf-all{margin-top:32px!important;text-align:center}
.tf-letter{padding:40px var(--m) 140px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px;align-items:start}
.tf-sheet2{grid-column:2/8;background:var(--paper);color:var(--ink);padding:clamp(24px,5vw,72px)}
.tf-letter h2{font-size:var(--s-head);margin-bottom:28px}
.tf-sheet2 p{font-size:var(--s-lead);line-height:1.4}.tf-sheet2 p+p{margin-top:1em}
.tf-sign{font-style:italic;font-size:1.375rem!important;margin-top:28px!important}
.tf-cta{margin-top:24px!important}
.tf-aside{grid-column:9/13;display:flex;flex-direction:column;gap:20px}
.tf-aside img{width:100%;aspect-ratio:16/9;object-fit:cover}
.tf-aside p{font-size:1rem}
.tf.js .rv{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.tf.js .rv.in{opacity:1;transform:none}
@media (max-width:480px){.tf-hero{padding:24px 12px}.tf-leadh,.tf-showh{font-size:1.25rem}}
@media (prefers-reduced-motion:reduce){.tf.js .rv{opacity:1;transform:none;transition:none}.tf-sheet,.tf-dim{position:absolute;inset:0;background:rgba(6,18,42,.55)}
.tf-hero>.tf-bgimg{animation:none}}
@media (max-width:900px){
.tf-sheet,.tf-desks,.tf-picks,.tf-letter{grid-template-columns:minmax(0,1fr)}
.tf-sheet>*,.tf-desks>*,.tf-picks>*,.tf-letter>*{grid-column:1/-1!important}
.tf-side{display:none}
.tf-leadtx{margin-top:24px}
.tf-latest ul{grid-template-columns:minmax(0,1fr);gap:14px}
.tf-desks,.tf-picks{padding:100px var(--m)}
.tf-word h2{font-size:24cqw}
.tf-show{grid-template-columns:1fr;grid-template-rows:auto auto}
.tf-tabs{grid-column:1;padding:24px clamp(24px,5vw,72px) 0}
.tf-panel{grid-column:1;grid-row:2;grid-template-columns:1fr}
.tf-plate{padding:16px clamp(24px,5vw,72px)}.tf-side2{padding:24px clamp(24px,5vw,72px) 32px}
.tf-cells{grid-template-columns:1fr}
.tf-menu{padding:48px 24px 32px}.tf-menu li a{flex-wrap:wrap}.tf-dots{display:none}.tf-v{flex-basis:100%}

}
