/* WTP Lite front scenes (2.20.1): every theme opens with its own scenery around the photo. Colours follow the chosen scheme. */
.wtpf .wtpf-sc{position:relative;overflow:hidden;isolation:isolate;color:#fff}
.wtpf .wtpf-sc__bg{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.wtpf .wtpf-sc .wtpf-x-hero__media{z-index:0}
.wtpf .wtpf-sc .wtpf-x-hero__title{text-shadow:none}
.wtpf .wtpf-sc .wtpf-x-hero__copy{max-width:none}
.wtpf .wtpf-sc .wtpf-x-hero__ctrl{z-index:4}
.wtpf .wtpf-sc__bookwrap{margin-top:-58px}
@media (prefers-reduced-motion:reduce){.wtpf .wtpf-sc *{animation:none!important}}

/* ============ SNOW & ALPINE: night sky, falling snow, a jagged snow-capped photo ============ */
.wtpf .wtpf-sc--alpine{--sc-bg:color-mix(in srgb,var(--wtp-deep) 84%,#000);min-height:clamp(700px,92svh,940px);background:linear-gradient(180deg,var(--sc-bg) 0%,var(--wtp-deep) 42%,color-mix(in srgb,var(--wtp-deep) 62%,#8db4d8) 100%);display:flex;flex-direction:column}
.wtpf .wtpf-sc--alpine .wtpf-sc__top{position:relative;z-index:3;padding-top:clamp(40px,5.5vw,84px)}
.wtpf .wtpf-sc--alpine .wtpf-x-hero__eyebrow{display:inline-block;background:var(--wtp-accent);color:var(--wtp-accent-ink);padding:8px 16px 8px 14px;margin-bottom:26px;clip-path:polygon(0 0,100% 0,calc(100% - 10px) 50%,100% 100%,0 100%);letter-spacing:.22em;font-weight:700;opacity:1}
.wtpf .wtpf-sc--alpine .wtpf-x-hero__title{font-weight:700;text-transform:uppercase;letter-spacing:.07em;font-size:clamp(42px,7.4vw,116px);line-height:.95;max-width:13ch;text-shadow:0 6px 40px rgba(0,0,0,.35)}
.wtpf .wtpf-sc--alpine .wtpf-x-hero__score{color:#dbe8f5}
.wtpf .wtpf-sc--alpine .wtpf-sc__peak{position:absolute;left:0;right:0;bottom:0;height:58%;z-index:1;--peaks:polygon(0 48%,5% 38%,9% 44%,16% 26%,22% 40%,28% 22%,36% 40%,42% 30%,50% 44%,58% 18%,65% 36%,71% 26%,79% 40%,87% 20%,93% 34%,100% 24%,100% 100%,0 100%)}
.wtpf .wtpf-sc--alpine .wtpf-sc__rim{position:absolute;inset:0;background:#fff;clip-path:var(--peaks);transform:translateY(-14px);opacity:.95}
.wtpf .wtpf-sc--alpine .wtpf-sc__peakphoto{position:absolute;inset:0;clip-path:var(--peaks);background:#0b1b2c}
.wtpf .wtpf-sc--alpine .wtpf-sc__peak::after{content:"";position:absolute;inset:0;clip-path:var(--peaks);background:linear-gradient(180deg,rgba(11,27,44,.45) 0%,transparent 30%);pointer-events:none}
.wtpf .wtpf-sc--alpine .wtpf-sc__snow{position:absolute;inset:0;background-image:radial-gradient(2px 2px at 20px 30px,#fff,transparent 60%),radial-gradient(3px 3px at 120px 90px,#fff,transparent 60%),radial-gradient(2px 2px at 200px 160px,#fff,transparent 60%),radial-gradient(2.5px 2.5px at 60px 220px,#fff,transparent 60%),radial-gradient(1.5px 1.5px at 230px 40px,#fff,transparent 60%);background-size:260px 260px;opacity:.8;animation:wtpf-snow 16s linear infinite;--t:260px}
.wtpf .wtpf-sc--alpine .wtpf-sc__snow--b{background-size:360px 360px;opacity:.5;animation-duration:26s;--t:360px;background-position:90px 0}
.wtpf .wtpf-sc--alpine .wtpf-sc__snow--c{background-size:180px 180px;opacity:.3;animation-duration:11s;--t:180px;background-position:40px 0}
@keyframes wtpf-snow{to{background-position-y:var(--t)}}
.wtpf .wtpf-sc--alpine .wtpf-sc__far{position:absolute;left:0;right:0;bottom:28%;width:100%;height:auto}
.wtpf .wtpf-sc--alpine .wtpf-sc__far .r1{fill:rgba(255,255,255,.08)}
.wtpf .wtpf-sc--alpine .wtpf-sc__far .r2{fill:rgba(255,255,255,.14)}

/* ============ BUSH & RAINFOREST: fern canopy, mist and fireflies, a leaf-shaped photo ============ */
.wtpf .wtpf-sc--rain{background:radial-gradient(ellipse at 78% 30%,color-mix(in srgb,var(--wtp-brand) 78%,#7dd37a) 0%,transparent 55%),linear-gradient(165deg,color-mix(in srgb,var(--wtp-deep) 72%,#000) 0%,var(--wtp-deep) 100%)}
.wtpf .wtpf-sc--rain .wtpf-sc__fronds{position:absolute;inset:0;width:100%;height:100%}
.wtpf .wtpf-sc--rain .f{color:rgba(0,0,0,.34)}
.wtpf .wtpf-sc--rain .f2,.wtpf .wtpf-sc--rain .f4{color:rgba(160,220,150,.12)}
.wtpf .wtpf-sc--rain .f5{color:rgba(0,0,0,.2)}
.wtpf .wtpf-sc__fly{position:absolute;left:var(--x);top:var(--y);width:7px;height:7px;border-radius:50%;background:#ffe9a0;box-shadow:0 0 14px 5px rgba(255,226,130,.55);opacity:0;animation:wtpf-fly 6s ease-in-out infinite;animation-delay:var(--d)}
@keyframes wtpf-fly{0%,100%{opacity:0;transform:translate(0,0)}30%{opacity:.95}60%{opacity:.7;transform:translate(24px,-34px)}}
.wtpf .wtpf-sc--rain .wtpf-sc__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:clamp(32px,5vw,84px);align-items:center;padding-block:clamp(48px,6vw,96px) clamp(64px,7vw,110px);min-height:min(88svh,860px)}
.wtpf .wtpf-sc--rain .wtpf-x-hero__eyebrow{color:#ffe9a0;letter-spacing:.3em}
.wtpf .wtpf-sc--rain .wtpf-x-hero__title{color:#f6f0dc;font-weight:500;font-size:clamp(46px,6.4vw,100px);text-shadow:0 4px 34px rgba(0,0,0,.35)}
.wtpf .wtpf-sc--rain .wtpf-sc__book{margin-top:clamp(28px,3vw,44px);max-width:520px}
.wtpf .wtpf-sc--rain .wtpf-book--panel{background:rgba(247,243,230,.96);border:0;border-radius:22px 4px 22px 4px;box-shadow:0 30px 60px -28px rgba(0,0,0,.6)}
.wtpf .wtpf-sc--rain .wtpf-sc__leafwrap{position:relative;height:min(76svh,740px);min-height:440px}
.wtpf .wtpf-sc--rain .wtpf-sc__leaf{position:absolute;inset:0;border-radius:8% 86% 8% 86%/8% 64% 8% 64%;box-shadow:0 0 0 10px rgba(255,255,255,.07),0 40px 90px -30px rgba(0,0,0,.65)}
.wtpf .wtpf-sc--rain .wtpf-sc__leafwrap::after{content:"";position:absolute;inset:0;border-radius:8% 86% 8% 86%/8% 64% 8% 64%;box-shadow:inset 0 0 0 2px rgba(255,255,255,.25);pointer-events:none}

/* ============ COUNTRY & FARMSTAY: gingham, timber fence, a taped polaroid ============ */
.wtpf .wtpf-sc--farm{color:var(--wtp-ink);background:var(--wtp-surface-2)}
.wtpf .wtpf-sc--farm::before{content:"";position:absolute;inset:0;z-index:-1;background-image:repeating-linear-gradient(0deg,color-mix(in srgb,var(--wtp-brand) 11%,transparent) 0 18px,transparent 18px 36px),repeating-linear-gradient(90deg,color-mix(in srgb,var(--wtp-brand) 11%,transparent) 0 18px,transparent 18px 36px);-webkit-mask-image:linear-gradient(180deg,transparent 35%,#000 100%);mask-image:linear-gradient(180deg,transparent 35%,#000 100%)}
.wtpf .wtpf-sc--farm .wtpf-sc__fence{position:absolute;left:0;right:0;bottom:0;width:100%;height:auto;color:color-mix(in srgb,var(--wtp-brand) 62%,#3a2412);fill:currentColor;opacity:.9}
.wtpf .wtpf-sc--farm .wtpf-sc__fence g{fill:color-mix(in srgb,var(--wtp-brand) 58%,#4a2f14)}
.wtpf .wtpf-sc--farm .wtpf-sc__wheat{position:absolute;left:1%;bottom:70px;height:240px;color:var(--wtp-accent)}
.wtpf .wtpf-sc--farm .wtpf-sc__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(40px,6vw,96px);align-items:center;padding-block:clamp(56px,6vw,96px) clamp(150px,13vw,190px)}
.wtpf .wtpf-sc--farm .wtpf-sc__polaroid{position:relative;background:#fff;padding:16px 16px 62px;box-shadow:0 30px 60px -30px rgba(60,40,20,.55),0 2px 0 rgba(0,0,0,.04);transform:rotate(-2.4deg);width:100%;max-width:680px;margin-inline:auto}
.wtpf .wtpf-sc--farm .wtpf-sc__snap{position:relative;inset:auto;aspect-ratio:4/3;background:#ddd}
.wtpf .wtpf-sc--farm .wtpf-sc__tape{position:absolute;z-index:3;top:-15px;left:50%;width:130px;height:34px;margin-left:-65px;transform:rotate(3deg);background:rgba(236,208,128,.82);box-shadow:0 1px 3px rgba(0,0,0,.15)}
.wtpf .wtpf-sc--farm .wtpf-sc__cap{position:absolute;left:0;right:0;bottom:16px;text-align:center;font-family:var(--wtp-font-display,Georgia,serif);font-style:italic;font-size:19px;color:#5b4a38}
.wtpf .wtpf-sc--farm .wtpf-sc__text{position:relative}
.wtpf .wtpf-sc--farm .wtpf-x-hero__eyebrow{color:var(--wtp-accent-text);letter-spacing:.24em}
.wtpf .wtpf-sc--farm .wtpf-x-hero__title{color:var(--wtp-ink);font-weight:600;font-size:clamp(44px,6vw,92px);line-height:1}
.wtpf .wtpf-sc--farm .wtpf-x-hero__score{color:var(--wtp-muted)}
.wtpf .wtpf-sc--farm .wtpf-sc__stamp{display:block;width:118px;margin-top:28px;color:var(--wtp-brand);opacity:.85;transform:rotate(-10deg)}

/* ============ LAKESIDE & RIVER: morning mist, one wide still photo and its reflection ============ */
.wtpf .wtpf-sc--lake{color:var(--wtp-ink);background:linear-gradient(180deg,color-mix(in srgb,var(--wtp-surface-2) 70%,#fff) 0%,color-mix(in srgb,var(--wtp-accent) 24%,#fff) 100%)}
.wtpf .wtpf-sc--lake .wtpf-sc__birds{position:absolute;right:9%;top:70px;width:200px;color:var(--wtp-muted);opacity:.6}
.wtpf .wtpf-sc--lake .wtpf-sc__top{text-align:center;padding-block:clamp(44px,5vw,84px) clamp(28px,3vw,44px)}
.wtpf .wtpf-sc--lake .wtpf-x-hero__eyebrow{color:var(--wtp-accent-text);letter-spacing:.38em}
.wtpf .wtpf-sc--lake .wtpf-x-hero__title{color:var(--wtp-ink);font-weight:400;font-size:clamp(44px,6.2vw,96px);letter-spacing:-.02em;line-height:1;margin-inline:auto;max-width:16ch}
.wtpf .wtpf-sc--lake .wtpf-x-hero__score{justify-content:center;color:var(--wtp-muted)}
.wtpf .wtpf-sc--lake .wtpf-sc__pano{position:relative;max-width:1240px}
.wtpf .wtpf-sc--lake .wtpf-sc__water{position:relative;inset:auto;aspect-ratio:21/9;min-height:300px;border-radius:2px;box-shadow:0 30px 60px -36px rgba(20,50,70,.5)}
.wtpf .wtpf-sc--lake .wtpf-sc__reflect{position:relative;height:150px;overflow:hidden;margin-top:3px;opacity:.55;-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,transparent 100%)}
.wtpf .wtpf-sc--lake .wtpf-sc__reflect img{position:absolute;left:0;top:0;width:100%;aspect-ratio:21/9;min-height:300px;object-fit:cover;transform:scaleY(-1);filter:blur(1.6px) saturate(.85)}
.wtpf .wtpf-sc--lake .wtpf-sc__reflect svg{position:absolute;inset:0;width:100%;height:100%;color:#fff;opacity:.7;animation:wtpf-ripple 14s ease-in-out infinite alternate}
@keyframes wtpf-ripple{from{transform:translateX(-14px)}to{transform:translateX(14px)}}
.wtpf .wtpf-sc--lake + .wtpf-sc__bookwrap--lake{margin-top:-110px}

/* ============ LUXURY: black, gold art-deco sunburst, a chamfered portrait, a concierge panel ============ */
.wtpf .wtpf-sc--lux{--g:var(--wtp-accent);background:radial-gradient(ellipse at 50% 100%,color-mix(in srgb,var(--wtp-accent) 20%,#0a0a0a) 0%,#0a0a0a 62%);color:#f1e8d2}
.wtpf .wtpf-sc--lux .wtpf-sc__rays{position:absolute;inset:0;width:100%;height:100%;color:var(--g);opacity:.34}
.wtpf .wtpf-sc--lux .wtpf-sc__grid3{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr) minmax(0,1fr);gap:clamp(28px,4.4vw,72px);align-items:center;padding-block:clamp(56px,6vw,100px);min-height:min(88svh,840px)}
.wtpf .wtpf-sc--lux .wtpf-x-hero__eyebrow{color:var(--g);letter-spacing:.42em}
.wtpf .wtpf-sc--lux .wtpf-x-hero__title{font-weight:400;text-transform:uppercase;letter-spacing:.14em;font-size:clamp(32px,3.9vw,60px);line-height:1.22;color:#f6edd8}
.wtpf .wtpf-sc--lux .wtpf-x-hero__score{color:var(--g)}
.wtpf .wtpf-sc--lux .wtpf-x-hero__copy::after{content:"";display:block;width:64px;height:1px;background:var(--g);margin-top:30px}
.wtpf .wtpf-sc--lux .wtpf-sc__tall{position:relative;aspect-ratio:3/4.1;max-height:min(74svh,760px);width:100%;margin-inline:auto;--ch:polygon(0 26px,26px 0,calc(100% - 26px) 0,100% 26px,100% calc(100% - 26px),calc(100% - 26px) 100%,26px 100%,0 calc(100% - 26px))}
.wtpf .wtpf-sc--lux .wtpf-sc__gold{position:absolute;inset:-3px;background:var(--g);clip-path:var(--ch)}
.wtpf .wtpf-sc--lux .wtpf-sc__tall::before{content:"";position:absolute;inset:-22px;border:1px solid var(--g);opacity:.45}
.wtpf .wtpf-sc--lux .wtpf-sc__portrait{position:absolute;inset:0;clip-path:var(--ch)}
.wtpf .wtpf-sc--lux .wtpf-sc__concierge{font-size:11px;letter-spacing:.42em;text-transform:uppercase;color:var(--g);margin:0 0 18px;display:flex;align-items:center;gap:14px}
.wtpf .wtpf-sc--lux .wtpf-sc__concierge::before{content:"";width:34px;height:1px;background:var(--g)}
.wtpf .wtpf-sc--lux .wtpf-sc__side{--wtp-ink:#f4ecd8;--wtp-muted:rgba(244,236,216,.62);--wtp-line:rgba(224,200,150,.28);--wtp-surface:transparent;--wtpf-card:rgba(255,255,255,.03);--wtp-brand:var(--wtp-accent);--wtp-brand-ink:#14110a}
.wtpf .wtpf-sc--lux .wtpf-book--panel{border-radius:0;box-shadow:none;border:1px solid var(--wtp-line);backdrop-filter:blur(6px)}
.wtpf .wtpf-sc--lux .wtpf-book--panel .wtpf-book__seg{border-radius:0;background:transparent}

/* ============ CITY & URBAN: concrete, a giant outlined street name, a grid of three photos, a ticker tape ============ */
.wtpf .wtpf-sc--city{color:var(--wtp-ink);background:var(--wtp-surface-2);display:flex;flex-direction:column}
.wtpf .wtpf-sc--city .wtpf-sc__sky{position:absolute;left:0;right:0;bottom:0;width:100%;height:auto;color:var(--wtp-ink);opacity:.07}
.wtpf .wtpf-sc--city .wtpf-sc__word{position:absolute;left:-1%;bottom:46px;z-index:-1;font-weight:900;font-size:clamp(110px,23vw,360px);line-height:.78;letter-spacing:-.05em;color:transparent;-webkit-text-stroke:2px color-mix(in srgb,var(--wtp-ink) 16%,transparent);white-space:nowrap;pointer-events:none}
.wtpf .wtpf-sc--city .wtpf-sc__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,5vw,80px);align-items:center;padding-block:clamp(48px,5vw,84px) clamp(72px,7vw,110px);flex:1}
.wtpf .wtpf-sc--city .wtpf-x-hero__eyebrow{display:inline-block;background:var(--wtp-ink);color:var(--wtp-surface);padding:7px 12px;letter-spacing:.2em;font-weight:700;opacity:1}
.wtpf .wtpf-sc--city .wtpf-x-hero__title{font-weight:900;text-transform:uppercase;letter-spacing:-.04em;line-height:.88;font-size:clamp(46px,6.8vw,110px);color:var(--wtp-ink)}
.wtpf .wtpf-sc--city .wtpf-x-hero__sub{color:var(--wtp-muted);font-weight:500}
.wtpf .wtpf-sc--city .wtpf-x-hero__score{color:var(--wtp-ink)}
.wtpf .wtpf-sc--city .wtpf-sc__book{margin-top:30px;max-width:520px}
.wtpf .wtpf-sc--city .wtpf-book--panel{border:2px solid var(--wtp-ink);border-radius:0;box-shadow:7px 7px 0 var(--wtp-ink);background:var(--wtp-surface)}
.wtpf .wtpf-sc--city .wtpf-sc__tiles{display:grid;grid-template-columns:1.45fr 1fr;grid-template-rows:1fr 1fr;gap:14px;height:min(66svh,640px);min-height:420px}
.wtpf .wtpf-sc--city .wtpf-sc__tile{position:relative;overflow:hidden;border:3px solid var(--wtp-ink);box-shadow:8px 8px 0 var(--wtp-accent);background:#222}
.wtpf .wtpf-sc--city .wtpf-sc__tile img{width:100%;height:100%;object-fit:cover;filter:grayscale(.9) contrast(1.1);transition:filter .4s}
.wtpf .wtpf-sc--city .wtpf-sc__tile:hover img,.wtpf .wtpf-sc--city .wtpf-sc__tile--0 img{filter:none}
.wtpf .wtpf-sc--city .wtpf-sc__tile--0{grid-row:1/3}
.wtpf .wtpf-sc--city .wtpf-sc__tile:only-child{grid-column:1/-1}
.wtpf .wtpf-sc--city .wtpf-sc__no{position:absolute;left:0;top:0;background:var(--wtp-ink);color:var(--wtp-surface);font-weight:800;font-size:13px;letter-spacing:.12em;padding:7px 12px}
.wtpf .wtpf-sc--city .wtpf-sc__tape{background:var(--wtp-ink);color:var(--wtp-surface);overflow:hidden;white-space:nowrap;padding:13px 0;border-top:3px solid var(--wtp-accent)}
.wtpf .wtpf-sc--city .wtpf-sc__tape>div{display:inline-flex;animation:wtpf-tape 42s linear infinite}
.wtpf .wtpf-sc--city .wtpf-sc__tape span{font-size:12px;font-weight:700;letter-spacing:.26em;padding:0 26px;display:inline-flex;align-items:center;gap:52px}
.wtpf .wtpf-sc--city .wtpf-sc__tape span::after{content:"\25CF";color:var(--wtp-accent);font-size:9px}
@keyframes wtpf-tape{to{transform:translateX(-25%)}}

/* ============ WINE COUNTRY: burgundy, climbing vines, a gold-ringed label medallion ============ */
.wtpf .wtpf-sc--vine{background:radial-gradient(ellipse at 74% 40%,color-mix(in srgb,var(--wtp-brand) 100%,#c0507a 0%) 0%,transparent 60%),linear-gradient(135deg,color-mix(in srgb,var(--wtp-deep) 70%,#000),var(--wtp-deep))}
.wtpf .wtpf-sc--vine .wtpf-sc__vinesl,.wtpf .wtpf-sc--vine .wtpf-sc__vinesr{position:absolute;top:0;height:100%;width:auto;max-width:16%}
.wtpf .wtpf-sc--vine .wtpf-sc__vinesl{left:-5%}
.wtpf .wtpf-sc--vine .wtpf-sc__vinesr{right:-5%;transform:scaleX(-1)}
.wtpf .wtpf-sc--vine .v-stem{stroke:rgba(214,190,140,.45)}
.wtpf .wtpf-sc--vine .v-leaf{fill:rgba(124,160,92,.42)}
.wtpf .wtpf-sc--vine .v-grapes circle{fill:rgba(30,6,26,.6);stroke:rgba(214,190,140,.4);stroke-width:1}
.wtpf .wtpf-sc--vine .wtpf-sc__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:clamp(32px,5vw,84px);align-items:center;padding-block:clamp(56px,6vw,100px);min-height:min(88svh,860px)}
.wtpf .wtpf-sc--vine .wtpf-x-hero__eyebrow{color:#e0c88f;letter-spacing:.34em}
.wtpf .wtpf-sc--vine .wtpf-x-hero__title{font-style:italic;font-weight:400;color:#f7ecd9;font-size:clamp(46px,6vw,96px);line-height:1.02}
.wtpf .wtpf-sc--vine .wtpf-sc__book{margin-top:clamp(28px,3vw,44px);max-width:520px}
.wtpf .wtpf-sc--vine .wtpf-book--panel{background:#f8f0e0;border:0;border-radius:2px;box-shadow:0 30px 60px -30px rgba(0,0,0,.7);outline:1px solid rgba(224,200,143,.7);outline-offset:-7px}
.wtpf .wtpf-sc--vine .wtpf-sc__medalwrap{position:relative;width:min(100%,520px);aspect-ratio:1;margin-inline:auto}
.wtpf .wtpf-sc--vine .wtpf-sc__ring{position:absolute;inset:-7%;width:114%;height:114%;color:#e0c88f;animation:wtpf-spin 120s linear infinite}
@keyframes wtpf-spin{to{transform:rotate(360deg)}}
.wtpf .wtpf-sc--vine .wtpf-sc__medal{position:absolute;inset:8%;border-radius:50%;box-shadow:0 0 0 5px #e0c88f,0 0 0 9px rgba(0,0,0,.35),0 40px 80px -30px rgba(0,0,0,.7)}

/* ============ TROPICAL & ISLAND: sun, palms, an arch window and surf ============ */
.wtpf .wtpf-sc--island{color:var(--wtp-ink);background:linear-gradient(180deg,color-mix(in srgb,var(--wtp-accent) 38%,#fff) 0%,#fff4df 55%,color-mix(in srgb,var(--wtp-brand) 14%,#fff) 100%);padding-bottom:70px}
.wtpf .wtpf-sc--island .wtpf-sc__sun{position:absolute;left:50%;top:26%;width:min(640px,80vw);aspect-ratio:1;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,#ffd08a 0%,#ffb56b 48%,rgba(255,181,107,0) 70%);opacity:.85}
.wtpf .wtpf-sc--island .wtpf-sc__fronds{position:absolute;inset:0;width:100%;height:100%}
.wtpf .wtpf-sc--island .f{color:color-mix(in srgb,var(--wtp-brand) 88%,#0a3)}
.wtpf .wtpf-sc--island .f2,.wtpf .wtpf-sc--island .f4{color:color-mix(in srgb,var(--wtp-accent) 70%,#0a3);opacity:.8}
.wtpf .wtpf-sc--island .wtpf-sc__top{position:relative;z-index:2;text-align:center;padding-block:clamp(44px,5vw,84px) clamp(20px,2vw,32px)}
.wtpf .wtpf-sc--island .wtpf-x-hero__eyebrow{color:var(--wtp-accent-text);letter-spacing:.34em}
.wtpf .wtpf-sc--island .wtpf-x-hero__title{font-style:italic;font-weight:500;color:var(--wtp-ink);font-size:clamp(46px,6.4vw,100px);margin-inline:auto;max-width:15ch}
.wtpf .wtpf-sc--island .wtpf-x-hero__score{justify-content:center;color:var(--wtp-muted)}
.wtpf .wtpf-sc--island .wtpf-sc__archwrap{position:relative;z-index:2;width:min(540px,84vw);aspect-ratio:3/3.5;margin:0 auto}
.wtpf .wtpf-sc--island .wtpf-sc__arch{position:absolute;inset:0;border-radius:999px 999px 0 0;box-shadow:0 0 0 10px rgba(255,255,255,.7),0 40px 80px -30px rgba(10,60,70,.55)}
.wtpf .wtpf-sc--island .wtpf-sc__surf{position:absolute;left:0;right:0;bottom:-1px;z-index:3;width:100%;height:84px;color:var(--wtp-surface)}
.wtpf .wtpf-sc__bookwrap--island .wtpf-book--bar{border-radius:999px;overflow:hidden}

/* ============ BEACH HOUSE (shore): bright sea photo, surf and sand, a sunny headline ============ */
.wtpf .wtpf-sc--shore{--sand:#f6eddc;--ph:min(76svh,720px);color:#18343a;background:var(--sand);min-height:calc(var(--ph) + 250px)}
.wtpf .wtpf-sc--shore .wtpf-sc__seaphoto{position:absolute;left:0;right:0;top:0;bottom:auto;height:var(--ph)}
.wtpf .wtpf-sc--shore .wtpf-sc__seaphoto::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.22) 0%,transparent 28%);pointer-events:none}
.wtpf .wtpf-sc--shore .wtpf-sc__gulls{position:absolute;right:10%;top:90px;width:210px;color:#fff;opacity:.9;z-index:2}
.wtpf .wtpf-sc--shore .wtpf-sc__sun{display:none}
.wtpf .wtpf-sc--shore .wtpf-sc__surfwrap{position:absolute;left:0;right:0;top:calc(var(--ph) - 92px);height:150px;z-index:2}
.wtpf .wtpf-sc--shore .wtpf-sc__foam{position:absolute;left:0;bottom:0;width:100%;height:100%;color:#fff;opacity:.95}
.wtpf .wtpf-sc--shore .wtpf-sc__sand{position:absolute;left:0;bottom:-1px;width:100%;height:78%;color:var(--sand)}
.wtpf .wtpf-sc--shore .wtpf-sc__shorecopy{position:relative;z-index:3;text-align:center;padding-top:calc(var(--ph) + 12px);padding-bottom:96px}
.wtpf .wtpf-sc--shore .wtpf-x-hero__eyebrow{color:#2f8a96;letter-spacing:.3em;margin-bottom:12px}
.wtpf .wtpf-sc--shore .wtpf-x-hero__title{color:#18343a;font-weight:600;font-size:clamp(44px,6vw,92px);margin-inline:auto;max-width:16ch}
.wtpf .wtpf-sc--shore .wtpf-x-hero__score{justify-content:center;color:#4b6a70}
.wtpf .wtpf-sc__bookwrap--shore .wtpf-book--bar{border-radius:999px;overflow:hidden}

/* ============ phones ============ */
@media (max-width:700px){
  .wtpf .wtpf-sc__bookwrap{margin-top:-40px}
  .wtpf .wtpf-sc--alpine{min-height:0;padding-bottom:0}
  .wtpf .wtpf-sc--alpine .wtpf-sc__top{padding-bottom:260px}
  .wtpf .wtpf-sc--alpine .wtpf-sc__peak{position:relative;height:340px;margin-top:-250px}
  .wtpf .wtpf-sc--alpine .wtpf-x-hero__title{font-size:clamp(36px,11vw,56px)}
  .wtpf .wtpf-sc :is(.wtpf-sc__grid,.wtpf-sc__grid3){grid-template-columns:minmax(0,1fr);gap:32px;min-height:0}
  .wtpf .wtpf-sc--rain .wtpf-sc__leafwrap{height:380px;min-height:0}
  .wtpf .wtpf-sc--rain .wtpf-sc__fronds{opacity:.8}
  .wtpf .wtpf-sc--farm .wtpf-sc__grid{padding-bottom:120px}
  .wtpf .wtpf-sc--farm .wtpf-sc__polaroid{order:2;transform:rotate(-1.6deg);padding-bottom:50px}
  .wtpf .wtpf-sc--farm .wtpf-sc__stamp{width:96px}
  .wtpf .wtpf-sc--farm .wtpf-sc__wheat{display:none}
  .wtpf .wtpf-sc--lake .wtpf-sc__water{aspect-ratio:4/3;min-height:0}
  .wtpf .wtpf-sc--lake .wtpf-sc__reflect{height:90px}
  .wtpf .wtpf-sc--lake .wtpf-sc__reflect img{aspect-ratio:4/3;min-height:0}
  .wtpf .wtpf-sc--lake .wtpf-sc__birds{display:none}
  .wtpf .wtpf-sc--lake + .wtpf-sc__bookwrap--lake{margin-top:-70px}
  .wtpf .wtpf-sc--lux .wtpf-sc__tall{order:-1;max-height:440px;width:min(78%,340px)}
  .wtpf .wtpf-sc--lux .wtpf-sc__tall::before{inset:-12px}
  .wtpf .wtpf-sc--lux .wtpf-x-hero__title{font-size:clamp(28px,8vw,40px)}
  .wtpf .wtpf-sc--city .wtpf-sc__tiles{height:340px;min-height:0}
  .wtpf .wtpf-sc--city .wtpf-sc__word{font-size:34vw;bottom:70px}
  .wtpf .wtpf-sc--vine .wtpf-sc__medalwrap{width:min(88%,380px)}
  .wtpf .wtpf-sc--vine .wtpf-sc__vinesl,.wtpf .wtpf-sc--vine .wtpf-sc__vinesr{max-width:14%;opacity:.7}
  .wtpf .wtpf-sc--island{padding-bottom:50px}
  .wtpf .wtpf-sc--island .wtpf-sc__sun{top:30%}
  .wtpf .wtpf-sc--shore{--ph:min(58svh,460px);min-height:calc(var(--ph) + 280px)}
  .wtpf .wtpf-sc--shore .wtpf-sc__surfwrap{top:calc(var(--ph) - 56px);height:100px}
  .wtpf .wtpf-sc--shore .wtpf-sc__shorecopy{padding-bottom:70px}
  .wtpf .wtpf-sc--shore .wtpf-sc__gulls{width:130px;top:70px}
}
