:root{--paper:#fffdfa;--ivory:#f3e6da;--sage:#e6e8df;--olive:#8d927e;--ink:#30302b;--muted:#686960;--taupe:#a58e78;--rule:#d4d4c9;--header:90px;--serif:"Cormorant Garamond",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:calc(var(--header) + 24px)}body{margin:0;padding-top:var(--header);background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}body:has(.chapter-menu:not([hidden])){overflow:hidden}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}a:hover{color:#68705d}button,input{font:inherit}button,a,input,summary{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #686e59;outline-offset:5px}img{max-width:100%;display:block}figure{margin:0}figcaption{font-size:10px;letter-spacing:.13em;color:var(--muted);margin-top:14px}h1,h2,h3,p,ul{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.06;letter-spacing:-.025em}h1{font-size:clamp(50px,6.7vw,88px);margin-bottom:28px}h2{font-size:clamp(38px,4.4vw,60px);margin-bottom:24px}h3{font-size:30px}em{font-weight:400}p{margin-bottom:22px}strong{font-weight:700}.wrap{width:min(1200px,calc(100% - 112px));margin-inline:auto}.eyebrow{font:600 10px/1.5 var(--sans);letter-spacing:.2em;color:var(--olive);text-transform:uppercase;margin-bottom:22px}.lead,.standfirst{font-size:20px;line-height:1.55}.intro{font-size:22px;max-width:850px;color:var(--muted)}.fine,.source-date,.table-note{font-size:12px;line-height:1.65;color:var(--muted)}.fine{margin-top:22px}.skip{position:fixed;left:20px;top:-100px;background:var(--ink);color:white;z-index:100;padding:12px}.skip:focus{top:10px}.site-header{position:fixed;inset:0 0 auto;height:var(--header);z-index:50;display:flex;align-items:center;gap:34px;padding:0 42px;border-bottom:1px solid var(--rule);background:rgba(255,253,250,.98)}.brand{text-decoration:none;margin-right:auto;line-height:1.12}.brand span{display:block;font-size:8px;letter-spacing:.21em;font-weight:600;margin-bottom:8px}.brand b{font:500 25px var(--serif)}.brand i{font-weight:400}.desktop-nav{display:flex;align-items:center;gap:25px}.desktop-nav a,.menu-toggle{font-size:12px;text-decoration:none;white-space:nowrap}.menu-toggle{display:flex;gap:20px;align-items:center;padding:12px 0 12px 22px;border:0;border-left:1px solid var(--rule);background:transparent}.menu-toggle i{font-style:normal;font-size:19px}.chapter-menu{position:fixed;top:var(--header);right:0;width:min(720px,100%);height:calc(100dvh - var(--header));overflow:auto;background:var(--paper);padding:30px 40px;box-shadow:-20px 30px 80px #30302b22;border-left:1px solid var(--rule)}[hidden]{display:none!important}.menu-top{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--rule);padding-bottom:20px;font-size:10px;letter-spacing:.1em}.chapter-menu nav{display:grid;grid-template-columns:1fr 1fr;gap:0 26px}.chapter-menu nav a{padding:18px 0;border-bottom:1px solid var(--rule);text-decoration:none;font:500 22px/1.2 var(--serif);display:flex;gap:15px}.chapter-menu nav span{font:10px var(--sans);letter-spacing:.07em;color:var(--taupe);padding-top:5px}.menu-home{display:block;margin-top:24px;font-size:12px}.hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:68px;align-items:center;padding:72px 0 64px;min-height:730px}.hero h1{font-size:clamp(60px,6.5vw,88px)}.hero-copy>.eyebrow{margin-bottom:28px}.hero-copy>.lead{font-size:19px;margin-top:28px}.hero-copy>p:not(.eyebrow):not(.lead){color:var(--muted);font-size:14px}.hero-image{position:relative;padding:0 0 28px 28px}.hero-image:before{content:"";position:absolute;background:#a8ad99;inset:-35px -35px 65px 95px;z-index:-1}.hero-image img{width:100%;height:550px;object-fit:cover;object-position:45% 62%}.actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin:28px 0}.button{display:inline-flex;align-items:center;justify-content:center;background:#858b74;color:var(--paper);border:1px solid #858b74;text-decoration:none;font:500 10px/1.5 var(--sans);letter-spacing:.12em;padding:17px 23px;min-height:48px}.button:hover{background:#707760;color:white}.button.dark{background:var(--ink);border-color:var(--ink)}.text-link,.text-button,.chapter-link{font:500 10px/1.5 var(--sans);letter-spacing:.13em}.text-link{text-decoration:none;border-bottom:1px solid var(--taupe);padding-bottom:6px}.text-button{border:0;border-bottom:1px solid var(--taupe);background:transparent;color:var(--muted);padding:8px 0}.directory-section{padding:70px 0 86px;border-top:1px solid var(--rule)}.section-title{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:end;margin-bottom:35px}.section-title h2{margin:0}.section-title>p{font-size:14px;color:var(--muted);max-width:390px}.directory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.directory-card{border:1px solid var(--rule);padding:24px 26px 25px;text-decoration:none;position:relative;min-height:194px;transition:background .2s,border-color .2s}.directory-card:hover{background:#f2f3ec;border-color:#999f88;color:var(--ink)}.directory-number{display:block;font:500 11px var(--sans);color:var(--taupe);margin-bottom:24px;letter-spacing:.15em}.directory-card h3{font-size:28px;max-width:94%;margin-bottom:13px}.directory-card p{font-size:12px;line-height:1.6;color:var(--muted);max-width:94%;margin:0}.directory-arrow{position:absolute;right:20px;top:22px;color:var(--olive)}.home-chapter{padding:64px 0 72px;scroll-margin-top:0;border-top:1px solid var(--rule)}.sage{background:var(--sage)}.cream{background:var(--ivory)}.section-meta{display:flex;justify-content:space-between;align-items:start;gap:25px;margin-bottom:30px}.section-meta>.eyebrow{margin-bottom:0}.back{white-space:nowrap;font:500 9px/1.8 var(--sans);letter-spacing:.13em;text-decoration:none;border-bottom:1px solid var(--taupe);padding-bottom:2px}.story-grid{display:grid;grid-template-columns:1fr .85fr;gap:85px;align-items:center}.story-grid>div>p{max-width:570px}.story-image{width:100%;height:460px;object-fit:cover}.story-grid h2{font-size:66px;max-width:500px}.nyt{background:var(--ink);color:#f5f2e9;font:400 31px/1.25 var(--serif);padding:38px 55px;margin:42px 0 30px}.nyt cite,blockquote cite{display:block;margin-top:20px;font:400 11px/1.5 var(--sans);letter-spacing:.1em;font-style:normal}.chapter-link{display:inline-flex;align-items:center;gap:40px;text-decoration:none;border-bottom:1px solid var(--taupe);padding:8px 0;margin-top:28px}.chapter-link>span{font-size:18px;line-height:1}.principles{display:grid;grid-template-columns:repeat(4,1fr);gap:34px;margin-top:45px}.principles>div{border-top:1px solid var(--rule);padding-top:22px}.principles span{display:block;font:400 30px var(--serif);color:var(--olive);margin-bottom:18px}.principles h3{font:600 11px var(--sans);letter-spacing:.05em;text-transform:uppercase}.principles p{font-size:13px;color:var(--muted);line-height:1.6}.split-intro{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:start}.split-intro>div{max-width:520px}.split-intro>div>p:not(.lead){font-size:15px;color:var(--muted)}.foundation{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--rule);margin-top:35px}.foundation>div{padding:28px 32px;border-right:1px solid var(--rule)}.foundation>div:first-child{padding-left:0}.foundation>div:last-child{border-right:0}.foundation i{font:italic 35px var(--serif);color:var(--taupe)}.foundation h3{font:600 16px var(--sans);margin:18px 0 10px}.foundation p{font-size:13px;color:var(--muted);margin:0}.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:85px}.about-grid img{width:100%;height:480px;object-fit:cover;object-position:50% 40%}.about-grid p{max-width:640px}.signature{font:italic 25px var(--serif);color:var(--taupe)}.final-note{text-align:center;padding:78px 0}.final-note h2{font-size:70px}.final-note>p:not(.eyebrow){font-size:14px}.chapter{padding-top:70px;padding-bottom:70px}.chapter-heading{display:flex;align-items:start;gap:40px;justify-content:space-between;border-bottom:1px solid var(--rule);padding-bottom:45px;margin-bottom:55px}.chapter-heading h1{font-size:clamp(52px,6vw,78px)}.chapter-heading .standfirst{max-width:760px;color:var(--muted);font-size:18px;margin:0}.chapter-heading>.back{margin-top:5px}.chapter .prose{max-width:820px;margin:38px auto}.chapter .prose h2{margin-top:55px}.article-story{display:flow-root;background:var(--sage);padding:40px}.article-story img{width:37%;height:510px;object-fit:cover;float:left;margin:0 40px 24px 0}.chapter-end{border-top:1px solid var(--rule);display:flex;justify-content:space-between;gap:25px;margin-top:55px;padding-top:30px;font-size:12px}.two-panels{display:grid;grid-template-columns:1fr 1fr;gap:30px}.two-panels>section{padding:34px;background:var(--ivory);border-top:3px solid var(--olive)}.two-panels>section:nth-child(2n){background:var(--sage)}.two-panels h2{font-size:39px}.two-panels p{font-size:15px}.callout,.portal-start{padding:38px 45px;background:var(--sage);border-left:6px solid #a0a68d;margin:38px 0}.callout h2,.portal-start h2{font-size:45px}.callout p,.portal-start p{max-width:800px}.callout a{font-size:13px}.card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin:35px 0}.credit-card{position:relative;border:1px solid var(--rule);background:#f7f6ef;padding:26px;display:flex;flex-direction:column}.credit-card:nth-child(odd){background:var(--ivory)}
.credit-card:nth-child(even){background:var(--sage)}.credit-card .eyebrow{font-size:9px;margin-bottom:17px}.credit-card h2{font-size:28px;font-weight:600;white-space:nowrap;margin-bottom:23px}.credit-card .card-photo{width:38%;height:250px;object-fit:cover;float:left}.credit-card .welcome{font:700 15px/1.55 var(--sans);text-align:left;border-top:1px solid var(--rule);padding-top:18px;margin-bottom:15px}.welcome>span{display:block;font-size:9px;letter-spacing:.14em;color:var(--muted);margin-bottom:8px}.credit-card ul{padding-left:17px;font-size:14px;line-height:1.6;margin-bottom:15px}.credit-card li{padding:4px 0}.annual{font-size:13px;font-weight:700;border-top:1px solid var(--rule);padding-top:13px;margin-bottom:18px}.credit-card .text-link{align-self:start;margin-top:auto}.disclosure-box{padding:25px;border:1px solid var(--rule);font-size:12px;color:var(--muted)}.table-wrap{overflow:auto;border:1px solid var(--rule);margin-top:35px;scrollbar-color:#a5a893 #eeeee5}.table-wrap table{border-collapse:collapse;width:100%;font-size:13px;text-align:left;min-width:680px}caption{text-align:left;padding:23px 25px;font:500 30px/1.1 var(--serif);background:var(--paper)}th,td{padding:17px 20px;vertical-align:top;border-top:1px solid var(--rule);border-right:1px solid var(--rule)}thead th{background:#c5c9b7;font:600 10px/1.5 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:#30362b}tbody tr:nth-child(2n){background:#f5f4ed}tbody th{font-weight:500;min-width:155px}td{min-width:140px}.table-note{margin-top:13px}.legend{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.legend>div{border-top:3px solid var(--olive);padding:20px;background:var(--ivory)}.legend p{font-size:12px;margin:10px 0 0}.booking-step{display:flex;gap:24px;align-items:baseline;border-top:1px solid var(--rule);padding-top:22px;margin-top:35px}.booking-step span{font:400 30px var(--serif);color:var(--taupe)}.booking-step h2{font-size:38px}.tool-links{display:flex;gap:25px;font-size:14px;margin-bottom:25px}.formula{background:var(--ivory);padding:25px;font:500 23px/1.4 var(--serif)}.reference-notes{max-width:900px;margin:55px auto}.reference-notes p{font-size:15px}.reference-notes h2{font-size:48px}.booking-examples{display:grid;grid-template-columns:1fr 1fr;gap:30px}.booking-examples figure{border:1px solid var(--rule);padding:15px}.booking-examples img{width:100%;height:280px;object-fit:contain}.booking-examples figcaption{letter-spacing:0;line-height:1.5;font-size:12px}.calculator-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.calculator-form{background:var(--ivory);padding:36px}.calculator-form label,.ledger-form label{display:block;font-size:13px;color:var(--muted);margin-bottom:22px}.calculator-form label>span{display:block;font-size:11px;margin:5px 0}.calculator-form input,.ledger-form input{display:block;width:100%;border:1px solid #d8d5ca;padding:16px;background:var(--paper);border-radius:5px;margin-top:10px;color:var(--ink);font-size:20px;font-weight:400;min-width:0}.input-prefix{position:relative}.input-prefix>b{position:absolute;left:17px;top:15px;font-size:20px;font-weight:400}.input-prefix input{padding-left:39px}.calculator-form details{font-size:12px;border-top:1px solid var(--rule);padding-top:18px}.calculator-form summary{cursor:pointer;margin-bottom:20px}.calculator-form .actions{gap:22px;margin-bottom:0}.calc-results{padding-top:28px}.cpp{font:400 110px/1 var(--serif);margin:25px 0 10px;letter-spacing:-.04em}.cpp i{font-size:60px;color:var(--taupe)}.calc-results>p:not(.eyebrow):not(.cpp){color:var(--muted);font-size:13px}.result-line{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:17px 0;border-top:1px solid var(--rule);font-size:13px}.result-line span{max-width:65%}.result-line strong{white-space:nowrap}.value-chart{border-top:1px solid var(--rule);padding-top:25px;margin-top:30px}.value-chart>div{display:grid;grid-template-columns:100px 1fr 60px;align-items:center;gap:14px;font-size:11px;margin:15px 0}.value-chart i{display:block;height:18px;background:var(--olive);min-width:2px}.value-chart>div+div i{background:#d2c6b6}#calc-error{color:#8f422e;font-size:12px}.ledger-section{margin-top:60px;padding-top:40px;border-top:1px solid var(--rule)}.ledger-form{display:grid;grid-template-columns:1fr 1fr;gap:10px 25px}.ledger-form input{font-size:15px}.ledger-form button{justify-self:start}.ledger-form label{margin-bottom:12px}.ledger-section .table-wrap{margin-top:30px}.ledger-section td button{border:0;background:none;text-decoration:underline;font-size:12px}.ledger-section td{min-width:100px}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.resource-card{padding:26px;border:1px solid var(--rule);text-decoration:none}.resource-card h2{font-size:30px}.resource-card p{font-size:13px;color:var(--muted)}.resource-card span{font-size:9px;letter-spacing:.12em}.resource-card:hover{background:var(--ivory)}blockquote:not(.nyt){margin:40px 0;padding:36px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font:italic 35px/1.3 var(--serif);text-align:center}.experience-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.experience-stats>div{padding:23px;text-align:center;background:var(--sage)}.experience-stats strong{display:block;font:500 34px var(--serif)}.experience-stats span{font-size:11px}footer{padding:55px max(42px,calc((100vw - 1200px)/2));background:#30332b;color:#f6f4ea;display:grid;grid-template-columns:1fr 1fr;gap:25px 70px}footer .eyebrow{color:#bec3af;font-size:9px}.footer-title{font:400 40px/1.1 var(--serif);margin-bottom:20px}footer nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:start;font-size:12px;padding-top:25px}footer .disclosure{font-size:10px;line-height:1.8;color:#d2d5c7;grid-column:1/-1;max-width:950px;margin:0}footer small{grid-column:1/-1;font-size:9px;color:#babfab;border-top:1px solid #777c6e;padding-top:22px}.image-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:35px 0}.image-strip img{width:100%;height:215px;object-fit:cover}
@media(min-width:1100px){.credit-card{display:grid;grid-template-columns:140px 1fr;column-gap:24px;align-content:start}.credit-card>.card-photo{grid-column:1;grid-row:1/7;width:140px;height:100%;min-height:360px;max-height:470px;object-fit:cover}.credit-card>.eyebrow,.credit-card>h2,.credit-card>.welcome,.credit-card>ul,.credit-card>.annual,.credit-card>.text-link,.credit-card>.fine{grid-column:2}.credit-card h2{font-size:24px;letter-spacing:-.035em}.credit-card:has(.card-photo)>.eyebrow{display:none}.credit-card .welcome{font-size:13px}.credit-card ul{font-size:12px}.credit-card .annual{font-size:12px}}
@media(max-width:1050px){:root{--header:80px}.wrap{width:calc(100% - 72px)}.site-header{padding:0 30px;gap:20px}.desktop-nav{gap:16px}.desktop-nav a{font-size:10px}.hero{gap:40px;padding-top:55px;min-height:620px}.hero h1{font-size:64px}.hero-image img{height:470px}.story-grid,.about-grid,.split-intro{gap:45px}.story-grid h2{font-size:55px}.directory-card{padding:22px 20px}.directory-card h3{font-size:25px}.principles{gap:24px}.chapter-heading{gap:25px}.calculator-layout{gap:35px}.calculator-form{padding:28px}.credit-card h2{font-size:25px}.credit-card .card-photo{width:100%;height:240px;float:none;margin-bottom:23px}.chapter-menu{padding:25px}.resource-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){:root{--header:72px}body{font-size:16px;line-height:1.65}.wrap{width:calc(100% - 40px)}.site-header{padding:0 20px;gap:15px}.brand span{font-size:7px;margin-bottom:5px}.brand b{font-size:22px}.desktop-nav{display:none}.menu-toggle{gap:12px;font-size:10px;padding-left:16px}.chapter-menu{padding:22px 20px}.chapter-menu nav{grid-template-columns:1fr}.chapter-menu nav a{padding:14px 0;font-size:23px}.hero{grid-template-columns:1fr;padding:44px 0 38px;gap:30px;min-height:auto}.hero h1{font-size:60px;line-height:1.02;margin-bottom:25px}.hero-copy>.lead{font-size:18px;margin-bottom:16px}.hero-copy>.eyebrow{font-size:8px;margin-bottom:25px}.hero-image{padding:0 0 20px 12px}.hero-image:before{inset:-15px -12px 55px 50px}.hero-image img{height:385px}.hero-image figcaption{font-size:8px;letter-spacing:.11em}.actions{gap:20px;margin:24px 0}.button{font-size:9px;padding:16px 19px}.directory-section{padding:45px 0 50px}.section-title{grid-template-columns:1fr;gap:18px;margin-bottom:26px}.section-title h2{font-size:46px}.section-title>p{font-size:13px;margin-bottom:0}.directory-grid{grid-template-columns:1fr;gap:9px}.directory-card{min-height:138px;padding:20px 22px 20px 60px}.directory-number{position:absolute;top:24px;left:20px;margin:0;font-size:10px}.directory-card h3{font-size:27px;margin-bottom:10px;max-width:90%}.directory-card p{font-size:13px;max-width:95%}.directory-arrow{right:16px;top:21px}.home-chapter{padding:40px 0 45px}.section-meta{margin-bottom:28px;gap:14px}.section-meta>.eyebrow{font-size:8px;letter-spacing:.13em;max-width:60%}.back{font-size:8px;letter-spacing:.06em}.story-grid,.split-intro,.about-grid{grid-template-columns:1fr;gap:28px}.story-grid h2,h2{font-size:45px}.story-image{height:380px}.story-grid>div>p{font-size:15px}.lead,.standfirst{font-size:18px}.nyt{font-size:26px;padding:28px 24px;margin:30px -20px}.nyt cite{font-size:9px}.principles{grid-template-columns:1fr 1fr;gap:24px 20px;margin-top:30px}.principles h3{font-size:10px;line-height:1.5}.principles p{font-size:12px}.split-intro>div>p:not(.lead){font-size:15px}.split-intro h2{margin-bottom:0}.foundation{grid-template-columns:1fr}.foundation>div,.foundation>div:first-child{padding:22px 0;border-right:0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:45px 1fr;gap:0 15px}.foundation i{grid-row:1/3}.foundation h3{margin:0 0 8px;font-size:15px}.foundation p{grid-column:2}.about-grid img{height:420px}.signature{font-size:23px}.chapter-link{font-size:9px;margin-top:20px;gap:25px}.final-note{padding:48px 0}.final-note h2{font-size:50px}.chapter{padding-top:38px;padding-bottom:45px}.chapter-heading{display:block;margin-bottom:35px;padding-bottom:30px}.chapter-heading h1{font-size:49px}.chapter-heading>.back{display:inline-block;margin-top:25px}.chapter-heading .standfirst{font-size:16px}.article-story{padding:23px}.article-story img{float:none;width:100%;height:360px;margin:0 0 28px}.article-story p{font-size:15px}.two-panels{grid-template-columns:1fr;gap:18px}.two-panels>section{padding:25px}.two-panels h2{font-size:35px}.chapter .prose{margin:30px 0}.chapter .prose p{font-size:15px}.callout,.portal-start{padding:28px 24px;margin:30px 0}.callout h2,.portal-start h2{font-size:39px}.callout p,.portal-start p{font-size:15px}.card-grid{grid-template-columns:1fr;gap:20px}.credit-card{padding:24px}.credit-card h2{font-size:27px;white-space:normal;margin-bottom:20px}.credit-card .card-photo{width:100%;height:265px;float:none;margin-bottom:24px}.credit-card .welcome{font-size:16px}.credit-card ul{font-size:15px}.annual{font-size:14px}.credit-card .text-link{font-size:10px}.table-wrap{margin-top:28px}caption{font-size:27px;padding:20px}.table-wrap table{font-size:13px}th,td{padding:15px}.legend{grid-template-columns:1fr 1fr}.legend>div{padding:17px}.booking-step{gap:17px}.booking-step h2{font-size:32px}.reference-notes h2{font-size:39px}.booking-examples{grid-template-columns:1fr;gap:20px}.booking-examples img{height:auto}.calculator-layout{grid-template-columns:1fr;gap:25px}.calculator-form{padding:25px 22px}.calculator-form label{font-size:13px}.calculator-form input{font-size:22px}.calc-results{padding:12px 5px}.cpp{font-size:100px}.result-line{font-size:12px}.calculator-form .actions{gap:18px}.value-chart>div{grid-template-columns:90px 1fr 54px;gap:9px}.ledger-form{grid-template-columns:1fr;gap:4px}.ledger-form input{font-size:16px}.resource-grid{grid-template-columns:1fr}.resource-card h2{font-size:32px}.resource-card p{font-size:15px}.experience-stats{grid-template-columns:1fr 1fr}.experience-stats>div{padding:20px 12px}.experience-stats strong{font-size:31px}.chapter-end{flex-wrap:wrap;font-size:11px}.image-strip{gap:6px;margin:26px 0}.image-strip img{height:155px}footer{padding:40px 22px;grid-template-columns:1fr;gap:20px}.footer-title{font-size:39px}footer nav{padding-top:0;font-size:12px}.footer-title br{display:none}footer .disclosure,footer small{grid-column:1}blockquote:not(.nyt){font-size:28px;padding:28px 10px}}
.chapter-notes{max-width:850px;border-top:1px solid var(--rule);padding-top:35px;margin:45px auto}.chapter-notes h2{font-size:36px}.chapter-notes p{font-size:14px;color:var(--muted)}.chapter-travel-image{width:100%;height:290px;object-fit:cover}.split-intro:has(.chapter-travel-image)>h2{grid-column:1;grid-row:1;margin-bottom:0}.split-intro:has(.chapter-travel-image)>.chapter-travel-image{grid-column:1;grid-row:2}.split-intro:has(.chapter-travel-image)>div{grid-column:2;grid-row:1/3}.split-intro:has(.chapter-travel-image){gap:28px 85px}
@media(max-width:720px){.split-intro:has(.chapter-travel-image){gap:24px}.split-intro:has(.chapter-travel-image)>h2,.split-intro:has(.chapter-travel-image)>.chapter-travel-image,.split-intro:has(.chapter-travel-image)>div{grid-column:auto;grid-row:auto}.chapter-travel-image{height:280px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.credit-card .best-for{font:600 14px/1.55 var(--sans);font-style:normal;color:var(--ink);margin-top:22px}.booking-block{padding:28px 0;border-bottom:1px solid var(--rule)}.booking-block>p{max-width:880px}.principles>section h2{font-size:32px}

.credit-card h2{font-family:var(--sans);font-size:20px;font-weight:600;line-height:1.25;letter-spacing:-.025em}

/* Portfolio: consistent photography and three-column editorial cards. */
.card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.credit-card{display:flex;flex-direction:column;min-width:0;padding:24px;gap:0}
.credit-card>.card-photo{display:block;float:none;flex:none;grid-column:auto;grid-row:auto;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:4/5;object-fit:cover;object-position:center;margin:0 0 24px}
.credit-card>h2,.credit-card>.eyebrow,.credit-card>.welcome,.credit-card>.source-date,.credit-card>ul,.credit-card>.best-for,.credit-card>.annual,.credit-card>.text-link{grid-column:auto;grid-row:auto;min-width:0}
.credit-card h2{font-family:var(--sans);font-size:19px;font-weight:700;line-height:1.3;letter-spacing:-.035em;white-space:normal;margin:10px 0 20px}
.credit-card .welcome{text-align:left}
.credit-card .annual{margin-top:auto;padding-top:20px}
@media(min-width:1400px){.credit-card h2{font-size:20px}}
@media(max-width:1099px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.card-grid{grid-template-columns:1fr;gap:24px}.credit-card{padding:24px}.credit-card>.card-photo{width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:4/5;margin-bottom:24px}.credit-card h2{font-size:22px}}

/* Warm editorial accent and introduction emphasis. */
:root{--warm-accent:#965740}
.home-chapter .eyebrow,.chapter-heading .eyebrow,.directory>.eyebrow,.gift-note>.eyebrow{color:var(--warm-accent)}
.home-chapter p strong,.chapter-heading .standfirst strong,.chapter>.intro strong{font-weight:700;color:var(--ink)}
.chapter-link{border-bottom-color:var(--warm-accent)}
.directory-item:hover{border-color:var(--warm-accent)}
.gift-note{border-top:1px solid var(--warm-accent)}
.gift-note h2 em{color:var(--warm-accent)}
.gift-note .gift-intro{max-width:590px;margin:0 auto 18px;font-size:18px;line-height:1.65}
.gift-note .gift-status{max-width:510px;margin:20px auto 0;font-size:12px;color:var(--muted)}

/* Clear, practical lodging guidance within the editorial system. */
.stay-explainer{margin:48px 0;padding-top:32px;border-top:1px solid var(--rule)}.stay-explainer>p,.stay-explainer>ol{max-width:860px}.stay-explainer .eyebrow{color:var(--warm-accent)}.stay-explainer>h2{font-size:48px;margin-bottom:24px}.stay-explainer>h2 strong{font-weight:600}.stay-explainer h3{font-family:var(--sans);font-size:19px;font-weight:600;line-height:1.4;margin:28px 0 12px}.stay-explainer .two-panels h3{margin-top:0}.stay-explainer li{padding:5px 0}.stay-explainer .fine,.stay-explainer .source-date{font-size:12px;line-height:1.6}.stay-explainer strong{color:var(--ink)}@media(max-width:720px){.stay-explainer>h2{font-size:38px}}

/* Plain-English reference: refined, readable, progressively enhanced. */
.booking-glossary,.playbook-glossary{border-top:1px solid var(--rule);padding-top:32px;margin:40px 0 50px}
.booking-glossary>.eyebrow,.playbook-glossary>.eyebrow{color:var(--warm-accent)}
.booking-glossary>h2,.playbook-glossary>h2{font-size:44px;line-height:1.05;margin-bottom:20px}
.booking-glossary>p,.playbook-glossary>p{max-width:780px}
.quick-terms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;margin:26px 0}
.quick-terms>div{padding:20px 0;border-top:1px solid var(--rule)}
.quick-terms dt{font-family:var(--sans);font-size:16px;font-weight:700;color:var(--ink);margin-bottom:8px}
.quick-terms dd{margin:0;font-size:15px;line-height:1.7;color:var(--muted)}
.glossary-nav{display:flex;flex-wrap:wrap;gap:12px 24px;border-block:1px solid var(--rule);padding:18px 0;margin:26px 0;font-size:13px}
.glossary-search{max-width:620px;margin:26px 0 36px}
.glossary-search label{display:block;font-size:14px;font-weight:600;margin-bottom:10px}
.glossary-search input{width:100%;font:16px var(--sans);padding:14px 16px;color:var(--ink);background:var(--paper);border:1px solid var(--rule);border-radius:4px}
.glossary-search [role=status]{font-size:12px;color:var(--muted);margin:10px 0}
.glossary-group{margin:36px 0}.glossary-group>h3,.program-names>h3{font:600 22px/1.35 var(--sans);margin-bottom:10px}
.glossary-group>p{font-size:14px;color:var(--muted)}
.glossary-term{border-bottom:1px solid var(--rule);padding:0;scroll-margin-top:calc(var(--header) + 24px)}
.glossary-term summary{padding:18px 28px 18px 0;font:700 16px/1.5 var(--sans);color:var(--ink);cursor:pointer}
.glossary-term[open] summary{color:var(--warm-accent)}
.glossary-term>div{max-width:800px;padding:0 0 22px}.glossary-term p{font-size:15px;line-height:1.75;margin:0 0 12px}
.glossary-top,.glossary-context{font-size:12px;letter-spacing:.025em}.glossary-context{margin:0 0 32px;color:var(--warm-accent)}
.program-names{padding:26px;background:var(--ivory);margin:32px 0}.program-names p{font-size:15px;line-height:1.75}
[hidden]{display:none!important}
@media(max-width:720px){.quick-terms{grid-template-columns:1fr;gap:0}.booking-glossary>h2,.playbook-glossary>h2{font-size:36px}.glossary-nav{display:grid;grid-template-columns:1fr;gap:13px}.program-names{padding:22px}.glossary-term summary{font-size:16px}}

.earning-introduction{margin:30px 0}.earning-introduction p{max-width:850px}.earning-introduction p strong{color:var(--ink);font-weight:700}.earning-example-heading{font:600 30px/1.25 var(--serif);margin:36px 0 18px}.earning-fee-source{font-size:12px!important;line-height:1.65}

/* A pale terracotta wash balances coconut and sage across alternating blocks. */
.directory-card{background:var(--paper)}

.directory-card:hover{background:#ecdbcc;border-color:var(--warm-accent)}
.portal-start{background:var(--ivory);border-left-color:var(--warm-accent)}
.legend>div:nth-child(even){background:var(--sage)}

/* A distinct highlight without recoloring the approved content panels. */
:root{--highlight:#ded1e3;--highlight-ink:#604569}
::selection{background:var(--highlight);color:var(--ink)}
mark{background:var(--highlight);color:var(--ink)}
.glossary-term[open] summary{color:var(--highlight-ink)}

/* Directory: repeat coconut, warm, sage in chapter order at every width. */
.directory-card:nth-child(3n+1){background:var(--paper)}
.directory-card:nth-child(3n+2){background:var(--ivory)}
.directory-card:nth-child(3n){background:var(--sage)}


.directory-card:hover,.directory-card:focus-visible{background:#e8e7e5;border-color:#aaa8a4;color:var(--ink)}

/* Keep headline endings together while balancing the remaining lines. */
h1,h2,h3{text-wrap:balance;hyphens:none;overflow-wrap:normal;word-break:normal}

/* Infinite Points: an editorial rhythm with practical, scannable blocks. */
.earning-nav{display:flex;flex-wrap:wrap;gap:12px 26px;border-block:1px solid var(--rule);padding:17px 0;font-size:13px;margin:24px 0 32px}
.earning-start,.earning-example,.earning-methods{padding:30px 0;margin:30px 0 42px;border-top:1px solid var(--rule)}
.earning-start>.eyebrow,.earning-example>.eyebrow,.earning-methods>.eyebrow{color:var(--warm-accent)}
.earning-start>h2,.earning-example>h2,.earning-methods>h2{font-size:46px;line-height:1.1;margin-bottom:22px}
.earning-start>.lead{font-size:22px}.earning-start>p:not(.eyebrow){max-width:800px}
.earning-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:30px 0}
.earning-cards>section{padding:25px 0;border-top:2px solid var(--olive);min-width:0}
.earning-cards h3{font:600 21px/1.35 var(--sans);margin-bottom:18px;color:var(--ink)}
.earning-cards p,.earning-cards li{font-size:15px;line-height:1.85;color:var(--muted)}
.earning-cards li{margin-bottom:17px;padding-left:3px}.earning-cards ul{padding-left:19px;margin-bottom:0}
.earning-cards strong,.earning-guidance strong{color:var(--ink)}
.earning-example{padding:32px;background:var(--ivory);border-top:0}
.earning-example-inputs{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:1000px;margin:24px 0}
.earning-example-inputs>p{font-size:16px;line-height:1.8;margin-bottom:0}
.earning-results{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:28px 0 20px}
.earning-results>section{background:var(--paper);padding:26px;border:1px solid var(--rule)}
.earning-results h3{font:700 20px/1.35 var(--sans);margin-bottom:14px}.earning-results p{font-size:17px;line-height:1.8;margin-bottom:0}
.earning-guidance{border-top:1px solid var(--rule);padding-top:25px;max-width:850px}.earning-guidance p{font-size:15px;line-height:1.85;margin-bottom:22px}
.earning-business{margin:25px 0 55px;padding:0;border-block:1px solid var(--rule)}
.earning-business summary{font:600 21px/1.45 var(--sans);padding:23px 0;cursor:pointer}
.earning-business>div{max-width:900px;padding:4px 0 28px}.earning-business p,.earning-business li{font-size:15px;line-height:1.85}.earning-business li{margin-bottom:12px}
#points-inventory{scroll-margin-top:calc(var(--header) + 24px)}
@media(max-width:1000px){.earning-cards{grid-template-columns:1fr;gap:5px}.earning-cards>section{padding:23px 0}.earning-cards p,.earning-cards li{max-width:760px}}
@media(max-width:720px){.earning-start>h2,.earning-example>h2,.earning-methods>h2{font-size:36px}.earning-example{padding:24px 20px}.earning-example-inputs,.earning-results{grid-template-columns:1fr;gap:18px}.earning-results>section{padding:22px}.earning-nav{gap:14px 22px}.earning-start,.earning-methods{margin-bottom:26px}.earning-business summary{font-size:19px}}

main p strong,main li strong,main td strong,main dd strong{font-weight:700;color:var(--ink)}
.chapter-link{font-weight:700}

/* Resources: warm platform cards and a compact, searchable glossary. */
body[data-page="resources"] .resource-card{background:var(--ivory)}
body[data-page="resources"] .resource-card:hover,body[data-page="resources"] .resource-card:focus-visible{background:#e8e7e5;border-color:#aaa8a4}
.playbook-glossary{padding-top:0;border:1px solid var(--rule);background:var(--paper)}
.glossary-toggle{cursor:pointer;padding:25px 28px;list-style:none;position:relative}
.glossary-toggle::-webkit-details-marker{display:none}
.glossary-toggle:after{content:'+';position:absolute;top:25px;right:27px;font:400 28px/1 var(--sans);color:var(--warm-accent)}
.playbook-glossary[open]>.glossary-toggle:after{content:'−'}
.glossary-toggle>.eyebrow{display:block;padding-right:35px;margin-bottom:12px;color:var(--warm-accent)}
.glossary-toggle h2{font-size:36px;line-height:1.1;margin:0 38px 14px 0}
.glossary-toggle-hint{font:600 11px/1.6 var(--sans);letter-spacing:.07em;color:var(--muted)}
.glossary-content{padding:0 28px 28px}
.glossary-group{margin:15px 0;border-top:1px solid var(--rule)}
.glossary-group>summary{font:600 19px/1.45 var(--sans);padding:19px 0;cursor:pointer;color:var(--ink)}
.glossary-group>div>p{font-size:14px;color:var(--muted)}
.program-names>summary{font:600 19px/1.45 var(--sans);cursor:pointer}.program-names>div{padding-top:20px}
@media(max-width:720px){.glossary-toggle{padding:23px 20px}.glossary-toggle h2{font-size:31px}.glossary-toggle:after{right:20px;top:23px}.glossary-content{padding:0 20px 24px}.glossary-group>summary{font-size:18px}}

.purchase-timing-tip{background:var(--ivory);border-left:3px solid var(--warm-accent);padding:22px 25px;margin:18px 0 24px}
.purchase-timing-tip>.eyebrow{color:var(--warm-accent);font-size:10px!important;line-height:1.5!important}
.purchase-timing-tip p{font-size:14px;line-height:1.8;margin-bottom:16px}.purchase-timing-tip p:last-child{margin-bottom:0}
.purchase-timing-example{display:grid;gap:9px;padding:16px 0;border-block:1px solid var(--rule);margin:16px 0;font-size:14px;line-height:1.8}
.purchase-timing-tip .fine{font-size:11px!important;line-height:1.6}
@media(max-width:720px){.purchase-timing-tip{padding:20px 18px}}

/* Shared expanded-chapter treatment: clear descriptions, generous reading rhythm. */
.portal-start{background:var(--sage);border-left-color:var(--olive)}
.readability-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 36px;margin:30px 0 40px}
.readability-cards>section{border-top:2px solid var(--rule);padding-top:22px;min-width:0}
.readability-cards h3{font:600 21px/1.4 var(--sans);margin-bottom:14px}.readability-cards p{font-size:15px;line-height:1.85;color:var(--muted);margin-bottom:17px}
.zero-guide-intro{max-width:900px;margin:30px 0}.zero-guide-intro>p{font-size:17px;line-height:1.85}.zero-guide-intro>p:first-child{font:500 29px/1.25 var(--serif)}
.chapter-tools{display:flex;flex-wrap:wrap;gap:13px 24px;padding:18px 0;margin:25px 0;border-block:1px solid var(--rule);font-size:13px}
.chapter-disclosure{margin:20px 0;border:1px solid var(--rule);background:var(--paper);scroll-margin-top:calc(var(--header) + 24px)}
.chapter-disclosure>summary{position:relative;cursor:pointer;list-style:none;padding:22px 55px 22px 25px;font:700 19px/1.45 var(--sans);color:var(--ink)}
.chapter-disclosure>summary::-webkit-details-marker{display:none}.chapter-disclosure>summary:after{content:'+';position:absolute;right:25px;top:22px;font:400 25px/1 var(--sans);color:var(--warm-accent)}
.chapter-disclosure[open]>summary:after{content:'−'}.chapter-disclosure>summary>span{display:block;font:400 13px/1.6 var(--sans);color:var(--muted);margin-top:5px}
.chapter-disclosure>summary:hover{background:#e8e7e5}.chapter-disclosure .disclosure-content{padding:0 25px 25px}
.chapter-disclosure .disclosure-content>p{font-size:15px;line-height:1.85}.chapter-disclosure .table-wrap{margin:5px 0 15px}.chapter-disclosure .table-wrap caption{font-size:24px}
.chapter-disclosure .booking-glossary{margin:0;border:0;padding-top:8px}.chapter-disclosure .reference-notes{margin:10px 0 25px}.chapter-disclosure .booking-examples{margin-top:20px}
.card-benefit-directory>.intro{font-size:18px;line-height:1.75;margin:30px 0}
.purchase-timing-tip>summary{font:700 16px/1.5 var(--sans);cursor:pointer}.purchase-timing-tip>div{padding-top:20px}
main p strong,main li strong,main dd strong{color:var(--ink);font-weight:700}
@media(max-width:720px){.readability-cards{grid-template-columns:1fr;gap:16px}.readability-cards>section{padding-top:20px}.chapter-disclosure>summary{padding:20px 43px 20px 19px;font-size:17px}.chapter-disclosure>summary:after{right:18px;top:21px}.chapter-disclosure .disclosure-content{padding:0 18px 22px}.chapter-disclosure .table-wrap caption{font-size:21px}.chapter-tools{gap:14px 20px}}

/* Section 01: align the publication attribution to the right. */
.nyt cite{text-align:right}

/* Chapter 06: alternate disclosure boxes within the approved palette. */
body[data-page="booking"] .booking-tone-sage{background:var(--sage)}
body[data-page="booking"] .booking-tone-warm{background:var(--ivory)}
body[data-page="booking"] .chapter-disclosure>summary:focus-visible{outline:2px solid var(--warm-accent);outline-offset:3px}

/* Member access; existing editorial page layouts remain intact. */
.access-gate{max-width:780px;padding-top:clamp(70px,12vw,160px);padding-bottom:80px}.access-gate h1{font:500 clamp(44px,7vw,74px)/1.08 var(--serif);margin:25px 0}.access-gate p{max-width:650px;line-height:1.85}.access-gate .button{margin:20px 22px 25px 0}.member-access{position:relative;display:flex;justify-content:space-between;gap:15px;padding:8px 5%;font:500 10px/1.6 var(--sans);letter-spacing:.08em;background:var(--sage);color:var(--ink)}.member-access a{text-decoration:underline}

/* Expanded chapters: a shared, restrained alternating palette. */
body main .chapter-disclosure.chapter-tone-sage{background:var(--sage)}
body main .chapter-disclosure.chapter-tone-warm{background:var(--ivory)}
body main .chapter-disclosure.chapter-tone-coconut{background:var(--paper)}
body main .chapter-disclosure>summary:hover{background:#e8e7e5}

.credit-calendar{padding:clamp(24px,4vw,48px);margin-top:36px}.credit-calendar fieldset{border:0;padding:0;margin:24px 0}.credit-calendar legend{font-weight:600;margin-bottom:14px}.credit-calendar label{display:flex;align-items:flex-start;gap:12px;margin:16px 0;line-height:1.7}.credit-calendar input{flex:none;width:18px;height:18px;margin-top:5px;accent-color:#626b59}.credit-calendar button{white-space:normal;line-height:1.6;max-width:100%;cursor:pointer}.credit-calendar .fine{font-size:12px}

.earning-resource-box{background:#e6e8df;border:1px solid #d4d6cb;padding:clamp(24px,4vw,44px);margin:36px 0 46px}.earning-resource-box h2{font:400 clamp(30px,4vw,42px)/1.12 var(--serif);margin:16px 0 28px}.earning-resource-box>.eyebrow{color:#965740}.earning-resource-box nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.earning-resource-box nav a{display:flex;flex-direction:column;gap:8px;padding:16px 12px;border-top:1px solid #bfc4b6;text-decoration:none;color:#30302b;transition:background .15s}.earning-resource-box nav a:hover{background:#e8e7e5}.earning-resource-box nav a:focus-visible{outline:2px solid #965740;outline-offset:3px}.earning-resource-box nav strong{font:600 18px/1.4 var(--sans)}.earning-resource-box nav span{font:400 13px/1.6 var(--sans)}.earning-resource-box>p:last-child{font:400 14px/1.9 var(--sans);margin:26px 0 0;max-width:720px}@media(max-width:620px){.earning-resource-box nav{grid-template-columns:1fr;gap:4px}.earning-resource-box nav a{padding:16px 8px}.earning-resource-box h2{margin-bottom:20px}}

.calendar-card-options{border-top:1px solid #c9c4b8;padding:18px 0}.calendar-card-options summary{font:600 17px/1.5 var(--sans);cursor:pointer}.calendar-card-options fieldset{padding-top:8px}.calendar-card-options label span{font-size:14px}.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}

/* Approved PPP block mark; full editorial wordmark remains primary. */
.brand.has-brandmark,.pw-brand.has-brandmark{display:flex;align-items:center;gap:12px}
.ppp-brand-mark{display:block;width:40px;height:40px;flex:none;object-fit:contain}
.ppp-brand-copy{min-width:0}
@media(max-width:600px){.brand.has-brandmark,.pw-brand.has-brandmark{gap:8px}.ppp-brand-mark{width:30px;height:30px}.has-brandmark b{font-size:20px}}
@media(max-width:370px){.has-brandmark b{font-size:18px}.ppp-brand-mark{width:26px;height:26px}}
