:root{--pt-ink:#173e3a;--pt-muted:#617269;--pt-accent:#d87658;--pt-paper:#f6f5f0;--pt-line:#dae1d9}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{overflow-x:clip}
.pt-skip{position:absolute;left:18px;top:-100px;z-index:100;background:#fff;color:var(--pt-ink);padding:12px 16px;font-weight:800}
.pt-skip:focus{top:12px}
.pt-overline{display:inline-block;font-size:10px;font-weight:800;letter-spacing:1.8px;line-height:1.7;color:var(--pt-accent);text-transform:uppercase}
.pt-hero h1,.pt-intro h2,.pt-steps h2,.pt-builder h2,.pt-places h2,.pt-image-break h2,.pt-checklist h2,.pt-reading h2,.pt-faq h2,.pt-final h2{font-family:Manrope,Arial,sans-serif;letter-spacing:-.078em;font-weight:800;line-height:1.08;color:var(--pt-ink)}
.pt-hero em,.pt-intro em,.pt-steps em,.pt-builder em,.pt-places em,.pt-image-break em,.pt-checklist em,.pt-reading em,.pt-faq em,.pt-final em{font-style:normal;color:var(--pt-accent)}
.pt-intro h2,.pt-steps h2,.pt-builder h2,.pt-places h2,.pt-image-break h2,.pt-checklist h2,.pt-reading h2,.pt-faq h2,.pt-final h2{font-size:clamp(39px,5vw,73px);margin:15px 0 26px}
.pt-hero p,.pt-intro p,.pt-steps p,.pt-builder p,.pt-places p,.pt-image-break p,.pt-checklist p,.pt-reading p,.pt-faq p,.pt-final p{color:var(--pt-muted);font-size:15px;line-height:1.85}
.pt-button{display:inline-flex;gap:28px;align-items:center;justify-content:space-between;background:#183a39;color:#fff;border-radius:12px;padding:18px 23px;font-size:13px;line-height:1.3;font-weight:800;transition:transform .2s ease;text-decoration:none}
.pt-button:hover{transform:translateY(-2px);color:#fff}.pt-button-light{background:#fff;color:var(--pt-ink)}.pt-button-light:hover{color:var(--pt-ink)}
.pt-textlink{font-size:13px;font-weight:800;color:var(--pt-ink);border-bottom:1px solid #bac5bb;padding-bottom:7px}
.pt-hero{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-height:640px;background:#f5f6f1}
.pt-hero-copy{padding:50px max(30px,7.7vw);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0}
.pt-crumb{display:flex;gap:10px;align-items:center;font-size:10px;letter-spacing:1.3px;font-weight:800;color:#829187;margin-bottom:62px}
.pt-crumb a:hover{color:var(--pt-accent)}
.pt-hero h1{font-size:clamp(52px,6.3vw,92px);margin:16px 0 25px;max-width:720px}
.pt-hero-copy>p{font-size:16px;max-width:520px;margin:0}.pt-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:25px;margin-top:32px}
.pt-hero-foot{font-size:10px;line-height:1.6;letter-spacing:1.25px;color:#819085;font-weight:800;margin-top:61px}
.pt-hero-photo{margin:0;position:relative;min-height:600px;overflow:hidden;background:#d7e4de}
.pt-hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pt-hero-photo figcaption,.pt-place-media>span{position:absolute;left:22px;bottom:22px;color:var(--pt-ink);font-size:10px;letter-spacing:1px;font-weight:800;background:#fff;padding:11px 14px}
.pt-quickbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#163d38;color:#fff;padding:24px 6%;gap:25px}
.pt-quickbar>div{display:grid;gap:6px;padding-left:18px;border-left:1px solid #4f7067}.pt-quickbar>div:first-child{padding-left:0;border-left:0}
.pt-quickbar span{font-size:9px;letter-spacing:1.1px;color:#f0a384;font-weight:800}.pt-quickbar strong{font-size:13px;line-height:1.45;font-weight:700}
.pt-intro{padding:99px 8%;display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:8%;align-items:start}
.pt-intro h2{margin-top:0}.pt-intro>div{max-width:800px}.pt-intro-lead{font-size:clamp(22px,2.5vw,32px)!important;font-family:Manrope,sans-serif;line-height:1.45!important;letter-spacing:-.05em;color:var(--pt-ink)!important;font-weight:700;margin:0 0 25px}
.pt-steps,.pt-places{padding:100px 8%}
.pt-steps{background:var(--pt-paper)}
.pt-section-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.75fr);align-items:end;gap:9%;margin-bottom:48px}.pt-section-head>p{max-width:480px;margin:0 0 12px}
.pt-step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}
.pt-step{display:flex;flex-direction:column;min-width:0;padding-top:26px;border-top:2px solid #234e47}
.pt-step-no{font-size:10px;letter-spacing:1.2px;color:var(--pt-accent);font-weight:800}
.pt-step h3,.pt-place-copy h3{font-family:Manrope,sans-serif;color:var(--pt-ink);font-size:clamp(22px,2.2vw,30px);letter-spacing:-.06em;line-height:1.25;font-weight:800;margin:19px 0 13px}
.pt-step p{font-size:14px;line-height:1.8;margin:0 0 25px;flex:1}
.pt-step a{display:inline-flex;justify-content:space-between;gap:7px;align-items:center;color:var(--pt-ink);font-size:12px;font-weight:800;border-bottom:1px solid #b9c5ba;padding-bottom:9px;align-self:flex-start}
.pt-step a:hover{color:var(--pt-accent)}
.pt-builder{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);background:#183e39;scroll-margin-top:90px}
.pt-builder-intro{padding:100px max(30px,9vw) 90px 9vw;min-width:0}
.pt-builder-intro h2{color:#fff}.pt-builder-intro>p{color:#d4e2db;max-width:540px}
.pt-builder .pt-overline{color:#f1aa87}.pt-days{display:flex;gap:10px;margin-top:34px;flex-wrap:wrap}
.pt-day-choice{border:1px solid #749087;border-radius:10px;padding:14px 21px;background:transparent;color:#fff;font-family:Manrope,sans-serif;font-size:13px;font-weight:800;cursor:pointer;transition:background-color .2s,color .2s}
.pt-day-choice[aria-pressed=true]{background:#fff;color:#183e39;border-color:#fff}
.pt-day-choice:hover:not([aria-pressed=true]){background:#365f56}
.pt-builder-hint{font-size:12px!important;margin-top:15px;color:#c9d9d0!important}
.pt-builder-outcome{background:#eff2ec;margin:37px 7% 37px 0;padding:39px 38px;min-width:0;display:flex;flex-direction:column}
.pt-builder-topline{display:flex;justify-content:space-between;gap:20px;padding-bottom:21px;border-bottom:1px solid #d0d8ce;font-size:10px;letter-spacing:1px;font-weight:800;color:#bd7659}
.pt-builder-outcome h3{font-family:Manrope,sans-serif;letter-spacing:-.06em;line-height:1.16;color:var(--pt-ink);font-size:clamp(27px,3vw,41px);margin:31px 0 10px}
.pt-builder-outcome>p{font-size:14px;margin:0 0 27px}
.pt-plan-list{list-style:none;margin:0;padding:0}
.pt-plan-list li{display:grid;grid-template-columns:75px 1fr;gap:10px;padding:18px 0;border-top:1px solid #d4dcd1}
.pt-plan-list li>span{font-size:10px;letter-spacing:1px;font-weight:800;color:var(--pt-accent);padding-top:3px}
.pt-plan-list strong{display:block;font-size:15px;color:var(--pt-ink);line-height:1.4}
.pt-plan-list p{font-size:13px;line-height:1.7;margin:6px 0 0}
.pt-small-link{font-size:12px;font-weight:800;color:var(--pt-ink);border-bottom:1px solid #9aafa2;padding:7px 0;align-self:flex-start;margin-top:auto}
.pt-small-link:hover{color:var(--pt-accent)}
.pt-place-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.pt-place-card{display:block;min-width:0;color:var(--pt-ink)}
.pt-place-media{aspect-ratio:6/5;overflow:hidden;position:relative;background:#dfe7df}
.pt-place-media img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.pt-place-card:hover img{transform:scale(1.035)}
.pt-place-media>span{bottom:14px;left:14px;padding:10px 12px;font-size:9px}
.pt-place-copy{padding:26px 3px 0}.pt-place-copy h3{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:11px 0}.pt-place-copy h3>span{font-size:18px;color:var(--pt-accent)}
.pt-place-copy p{font-size:14px;margin:0}.pt-place-card:hover h3{color:var(--pt-accent)}
.pt-image-break{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:var(--pt-ink)}
.pt-image-break-photo{position:relative;min-height:570px;overflow:hidden}.pt-image-break-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pt-image-break-copy{padding:85px 10%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.pt-image-break-copy h2{color:#fff}.pt-image-break-copy>p{color:#d4e3db;max-width:520px;margin-bottom:31px}
.pt-checklist{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9%;padding:105px 8%;background:var(--pt-paper)}
.pt-check-left>p{max-width:440px}.pt-progress{display:grid;gap:10px;max-width:330px;margin-top:31px}.pt-progress>span:first-child{font-size:11px;font-weight:800;letter-spacing:1px;color:var(--pt-ink)}
.pt-progress-line{height:5px;background:#dae3d9;overflow:hidden;border-radius:5px}.pt-progress-line>span{display:block;background:var(--pt-accent);height:100%;width:0;transition:width .2s ease}
.pt-reset{background:transparent;border:0;color:var(--pt-ink);font-family:Manrope,sans-serif;font-weight:800;font-size:12px;text-decoration:underline;text-underline-offset:5px;cursor:pointer;padding:10px 0;margin-top:19px}
.pt-check-right{align-self:center;border-top:1px solid #cfdbd0}
.pt-check-right label{display:flex;gap:16px;align-items:center;cursor:pointer;padding:20px 0;border-bottom:1px solid #cfdbd0;color:var(--pt-ink);font-size:14px;font-weight:700;line-height:1.55}
.pt-check-right input{width:19px;height:19px;accent-color:#183e39;flex-shrink:0}
.pt-check-right input:checked+span{color:#74887b;text-decoration:line-through}
.pt-reading{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:9%;padding:100px 8%}
.pt-reading-head h2{margin-bottom:15px}
.pt-reading-links{border-top:1px solid var(--pt-line);align-self:center}
.pt-reading-links a{display:grid;grid-template-columns:120px 1fr 20px;gap:14px;align-items:center;padding:25px 0;border-bottom:1px solid var(--pt-line)}
.pt-reading-links a>span:first-child{font-size:10px;font-weight:800;color:var(--pt-accent);letter-spacing:1px}
.pt-reading-links strong{font-family:Manrope,sans-serif;font-size:18px;letter-spacing:-.04em;color:var(--pt-ink);line-height:1.25}
.pt-reading-links a>span:last-child{color:var(--pt-accent)}
.pt-reading-links a:hover strong{color:var(--pt-accent)}
.pt-faq{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:9%;padding:100px 8%;background:var(--pt-paper)}
.pt-faq-copy>p{max-width:390px}.pt-faq-list{border-top:1px solid #d3dbd2}
.pt-faq-list details{border-bottom:1px solid #d3dbd2}.pt-faq-list summary{list-style:none;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 1px;color:var(--pt-ink);font-weight:800;font-size:15px;line-height:1.5;cursor:pointer}
.pt-faq-list summary::-webkit-details-marker{display:none}.pt-faq-list summary span{font-size:22px;font-weight:400;color:var(--pt-accent)}.pt-faq-list details[open] summary span{transform:rotate(45deg)}
.pt-faq-list details>p{padding:0 25px 22px 1px;margin:0;max-width:720px;font-size:14px;line-height:1.85}
.pt-final{text-align:center;padding:100px 7%;background:#fff}.pt-final h2{max-width:800px;margin:15px auto 20px}.pt-final p{max-width:500px;margin:0 auto 30px}.pt-final .pt-button{margin:auto}
:where(a,button,input,summary):focus-visible{outline:3px solid var(--pt-accent);outline-offset:3px}
@media(max-width:1100px){.pt-hero-copy{padding:50px 6%}.pt-crumb{margin-bottom:38px}.pt-hero h1{font-size:clamp(49px,6.4vw,72px)}.pt-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pt-builder-intro{padding:85px 7%}.pt-builder-outcome{margin-right:6%;padding:35px 30px}}
@media(max-width:900px){.pt-hero,.pt-intro,.pt-builder,.pt-section-head,.pt-reading,.pt-faq,.pt-checklist,.pt-image-break{grid-template-columns:1fr}.pt-hero{min-height:0}.pt-hero-copy{padding:60px 7% 50px}.pt-hero-photo{height:430px;min-height:0}.pt-quickbar{grid-template-columns:repeat(2,minmax(0,1fr))}.pt-quickbar>div:nth-child(3){padding-left:0;border-left:0}.pt-intro,.pt-steps,.pt-places,.pt-reading,.pt-faq,.pt-checklist{padding:75px 7%}.pt-intro{gap:20px}.pt-section-head{gap:0}.pt-place-grid{gap:15px}.pt-builder-intro{padding:75px 7% 25px}.pt-builder-outcome{margin:0 7% 65px}.pt-image-break-photo{min-height:440px}.pt-image-break-copy{padding:70px 7%}.pt-checklist{gap:35px}.pt-reading{gap:20px}.pt-faq{gap:20px}}
@media(max-width:620px){.pt-hero h1{font-size:clamp(43px,12vw,64px)}.pt-hero-foot{margin-top:35px}.pt-hero-photo{height:325px}.pt-quickbar{padding:23px 6%;gap:22px}.pt-quickbar strong{font-size:11px}.pt-quickbar span{font-size:9px}.pt-intro,.pt-steps,.pt-places,.pt-reading,.pt-faq,.pt-checklist{padding:65px 6%}.pt-step-grid{grid-template-columns:1fr;gap:35px}.pt-place-grid{grid-template-columns:1fr;gap:40px}.pt-place-media{aspect-ratio:5/4}.pt-builder-intro{padding:65px 6% 25px}.pt-builder-outcome{margin:0 6% 60px;padding:29px 24px}.pt-image-break-photo{min-height:330px}.pt-image-break-copy{padding:65px 6%}.pt-reading-links a{grid-template-columns:1fr 24px;gap:10px}.pt-reading-links a>span:first-child{grid-column:1/3}.pt-reading-links strong{font-size:17px}.pt-final{padding:72px 6%}.pt-hero-actions{gap:18px}.pt-hero-copy{padding:50px 6%}.pt-crumb{margin-bottom:36px}.pt-faq-list summary{font-size:14px}}
@media (min-width:781px) and (max-width:1000px){.header{height:73px}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:20px 6%;box-shadow:0 15px 25px #0001}.header nav.open{display:flex}.header .menu{display:block}.header .header-cta{margin-left:auto}}
@media(max-width:1000px){.header nav.open{max-height:calc(100vh - 73px);max-height:calc(100dvh - 73px);overflow-y:auto;overscroll-behavior:contain}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pt-button,.pt-place-media img,.pt-day-choice,.pt-progress-line>span{transition:none}}
@media print{.header,.pt-hero-actions,.pt-days,.pt-reset,.pt-final,footer{display:none!important}.pt-hero,.pt-builder,.pt-checklist,.pt-faq{display:block;min-height:0;background:#fff;color:#000}.pt-hero-photo{height:250px}.pt-image-break{break-inside:avoid}.pt-builder-intro h2,.pt-image-break h2{color:#173e3a}.pt-builder-outcome{margin:0}.pt-places,.pt-steps,.pt-reading,.pt-faq,.pt-checklist{padding:30px 5%}}
