/* Existing licensed brand fonts, served locally for stable rendering and archives. */
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:400;src:url('/books-fonts/CormorantGaramond-Regular.woff') format('woff');font-display:swap}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;src:url('/books-fonts/Inter-Regular.woff') format('woff');font-display:swap}
:root{--ladder-brand-image:url('/assets/beach-hero-3840.webp');--ink:#101820;--paper:#f7f4ec;--blue:#72a9d3;--line:rgba(16,24,32,.2);--gutter:clamp(1.25rem,5vw,5rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.65 "Inter",Arial,Helvetica,sans-serif}a{color:inherit}img{display:block;max-width:100%}button,select{font:inherit}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-weight:400;line-height:.9;letter-spacing:-.035em;text-wrap:balance}
.skip-link{position:fixed;top:-5rem;left:1rem;z-index:100;padding:.8rem 1rem;background:#fff;color:#000}.skip-link:focus{top:1rem}.site-header{position:absolute;inset:0 0 auto;z-index:20;display:flex;min-height:6rem;align-items:center;justify-content:space-between;gap:2rem;padding:1.2rem var(--gutter);color:#fff}.wordmark{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-size:.95rem;font-weight:500;letter-spacing:.23em;text-decoration:none;text-transform:uppercase}.site-nav{display:flex;gap:clamp(1.2rem,3.5vw,3rem);align-items:center}.site-nav a{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-size:.9rem;font-weight:600;letter-spacing:.2em;text-decoration:none;text-transform:uppercase}.site-nav a:hover,.site-nav a:focus-visible,.site-nav a.is-current{text-decoration:underline;text-underline-offset:.45rem}.menu-toggle{display:none;border:1px solid currentColor;background:transparent;color:inherit;padding:.5rem .7rem}.section-pad{padding:clamp(5rem,10vw,9rem) var(--gutter)}.eyebrow,.index-label{margin:0 0 1.5rem;font-size:.72rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase}.reveal{opacity:0;transform:translateY(12px);transition:opacity .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;transform:none}
.home-hero{position:relative;display:flex;min-height:100svh;align-items:center;justify-content:center;overflow:hidden;isolation:isolate;color:#fff;text-align:center}.hero-panorama{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}.home-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(14,43,61,.12),rgba(14,43,61,.04) 52%,rgba(14,43,61,.22))}.home-title{padding:8rem var(--gutter) 6rem}.home-title h1{margin:0;font-size:clamp(4.5rem,11vw,10.5rem);letter-spacing:-.045em;text-transform:uppercase}.hero-deck{margin:2rem auto 0;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-size:clamp(1.05rem,1.8vw,1.5rem);letter-spacing:.16em;text-transform:uppercase}.hero-caption{position:absolute;right:var(--gutter);bottom:1.5rem;left:var(--gutter);margin:0;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-size:.82rem;letter-spacing:.2em;text-transform:uppercase}
.intro-band{display:grid;grid-template-columns:.34fr 1.66fr;gap:3rem;background:var(--paper)}.intro-band h2{max-width:15ch;margin-bottom:2rem;font-size:clamp(3rem,6vw,6rem)}.intro-band div>p{max-width:45rem;margin-bottom:0;font-size:clamp(1.05rem,1.7vw,1.35rem)}.selected{background:#fff}.section-heading{display:grid;grid-template-columns:.35fr 1.65fr;gap:3rem;align-items:end;margin-bottom:3.5rem}.section-heading h2{margin:0;font-size:clamp(3rem,6.5vw,6.8rem)}.video-frame{aspect-ratio:16/9;overflow:hidden;background:#080d12}.video-frame iframe{display:block;width:100%;height:100%;border:0}.home-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,4vw,4rem)}.home-video--lead{grid-column:1/-1}.home-video-caption{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;padding-top:1rem;border-top:1px solid var(--line)}.home-video-caption span{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}.home-video-caption h3{margin:.55rem 0 0;font-size:clamp(2rem,4vw,4.6rem)}.home-video:not(.home-video--lead) .home-video-caption h3{font-size:clamp(1.8rem,3vw,3rem)}.home-video-caption a{flex:0 0 auto;font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;text-underline-offset:.35em}.button-link,.archive-link{display:inline-block;margin-top:2.5rem;padding:.75rem 1rem;border:1px solid currentColor;text-decoration:none;text-transform:uppercase;letter-spacing:.15em;font-size:.72rem}.cycle{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(3rem,8vw,8rem);align-items:center;background:var(--blue)}.cycle h2{margin-bottom:2rem;font-size:clamp(3rem,7vw,7rem)}.cycle-copy>p:not(.index-label){max-width:38rem;font-size:1.2rem}.text-link{display:inline-block;margin-top:1rem;text-underline-offset:.35em}.cycle-poster{margin:0;background:#fff}.cycle-poster img{width:100%;min-height:22rem;object-fit:cover}.cycle-poster figcaption{padding:1rem;font-size:.68rem;letter-spacing:.15em;text-transform:uppercase}.contact-strip{display:grid;grid-template-columns:.35fr 1.65fr;gap:3rem;background:#fff;border-bottom:1px solid var(--line)}.contact-strip a{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-size:clamp(1.5rem,3vw,3rem);overflow-wrap:anywhere}
.page-mast{position:relative;z-index:0;display:flex;min-height:64svh;flex-direction:column;justify-content:flex-end;overflow:hidden;color:#fff;background-position:center;background-size:cover}.page-mast::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,26,38,.62),rgba(8,26,38,.08))}.page-films .page-mast{background-image:var(--ladder-brand-image)}.page-archive .page-mast{background-image:var(--ladder-brand-image)}.page-about .page-mast{background-image:var(--ladder-brand-image)}.page-mast h1,.contact-page h1{margin:0 0 1rem;font-size:clamp(5rem,15vw,13rem);text-transform:uppercase}.page-mast>p:last-child{max-width:42rem;margin-bottom:0;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-size:1.35rem;letter-spacing:.12em;text-transform:uppercase}.film-records{padding-top:0}.film-record{display:grid;grid-template-columns:.38fr 1.62fr;gap:3rem;padding:clamp(4rem,7vw,7rem) 0;border-bottom:1px solid var(--line);scroll-margin-top:2rem}.film-record-meta{display:grid;align-content:start;gap:.6rem;color:#52606b;font-size:.7rem;letter-spacing:.13em;text-transform:uppercase}.film-record-copy h2{margin-bottom:2rem;font-size:clamp(3.5rem,7vw,7.5rem)}.film-player{max-width:64rem;margin:0 0 2.25rem}.film-player figcaption{padding:.8rem 0;border-bottom:1px solid var(--line);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}.film-record-copy>p,.credits p{max-width:52rem;font-size:clamp(1rem,1.45vw,1.2rem)}.credit-line{color:#394650}.credits{max-width:52rem;margin-top:2rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.credits summary{padding:1rem 0;cursor:pointer;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase}.credits p{padding-bottom:1.25rem}.cycle-page{background:var(--blue)}.cycle-list{border-top:1px solid var(--line)}.cycle-item{display:grid;grid-template-columns:.55fr 1.45fr;gap:2rem;padding:2rem 0;border-bottom:1px solid var(--line)}.cycle-item span{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase}.cycle-item strong{font:400 clamp(2rem,4vw,4rem)/.96 "Cormorant Garamond",Georgia,"Times New Roman",serif}
.archive-section{padding-top:3rem}.archive-controls{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:1rem;padding:1rem 0 2rem;border-bottom:1px solid var(--line)}.archive-controls label{display:grid;gap:.4rem;font-size:.68rem;letter-spacing:.13em;text-transform:uppercase}.archive-controls select{min-height:2.7rem;padding:.55rem;border:1px solid var(--line);background:#fff}.filter-reset{align-self:end;min-height:2.7rem;padding:.55rem 1rem;border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer}.archive-count{margin:1.5rem 0;font-size:.7rem;letter-spacing:.13em;text-transform:uppercase}.archive-list{border-top:1px solid var(--line)}.archive-row{display:grid;grid-template-columns:.25fr 1.3fr .65fr .45fr;gap:1.5rem;align-items:baseline;padding:1.4rem 0;border-bottom:1px solid var(--line)}.archive-row[hidden]{display:none}.archive-row>span,.archive-row>p,.archive-row>em{margin:0;color:#52606b;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;font-style:normal}.archive-row h2{margin:0;font-size:clamp(1.6rem,2.5vw,2.7rem)}.archive-row em{justify-self:end}.archive-video,.archive-poster{grid-column:2/-1;width:min(100%,62rem);margin:.5rem 0 0}.archive-poster img{display:block;width:100%;height:auto}.archive-empty{padding:3rem 0}
.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(3rem,9vw,9rem)}.about-statement p{margin:0;font:400 clamp(2.7rem,5vw,5rem)/1 "Cormorant Garamond",Georgia,"Times New Roman",serif}.about-notes h2{margin:2.4rem 0 .5rem;font-size:1.7rem}.about-notes h2:first-child{margin-top:0}.about-notes p{font-size:1.05rem}.founder{display:grid;grid-template-columns:.35fr 1.65fr;gap:3rem;background:var(--blue)}.founder h2{margin-bottom:1.5rem;font-size:clamp(4rem,8vw,8rem)}.founder div>p{max-width:50rem;font-size:1.15rem}.contact-page{position:relative;z-index:0;display:flex;min-height:78svh;flex-direction:column;justify-content:center;overflow:hidden;color:#fff;background:var(--ladder-brand-image) center/cover}.contact-page::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(8,26,38,.28)}.contact-email{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-size:clamp(1.25rem,3.4vw,3.5rem);overflow-wrap:anywhere;text-underline-offset:.3em}.channels{background:var(--paper)}.channels .section-heading{display:block}.channel-list{border-top:1px solid var(--line)}.channel-list a{display:flex;justify-content:space-between;gap:1rem;padding:1.2rem 0;border-bottom:1px solid var(--line);text-decoration:none}.channel-list span:first-child{font:400 clamp(1.5rem,2.5vw,2.4rem)/1 "Cormorant Garamond",Georgia,"Times New Roman",serif}.channel-list span:last-child{align-self:center;font-size:.7rem;letter-spacing:.1em}.site-footer{display:flex;justify-content:space-between;gap:2rem;padding:1.4rem var(--gutter);background:var(--ink);color:#fff;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}@media(max-width:900px){.site-header{min-height:4.8rem}.menu-toggle{display:block}.site-nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:1rem var(--gutter);background:rgba(8,26,38,.95)}.site-nav.is-open{display:flex}.site-nav a{padding:.8rem 0}.intro-band,.section-heading,.cycle,.contact-strip,.film-record,.about-grid,.founder{grid-template-columns:1fr}.home-video-grid{grid-template-columns:1fr}.home-video--lead{grid-column:auto}.archive-controls{grid-template-columns:1fr 1fr}.archive-row{grid-template-columns:.25fr 1.3fr .65fr}.archive-row em{grid-column:2/-1;justify-self:start}.archive-video,.archive-poster{grid-column:2/-1}}@media(max-width:600px){.wordmark{max-width:13rem;font-size:.76rem}.home-title h1{font-size:clamp(3.8rem,19vw,6rem)}.hero-deck{font-size:.9rem}.home-video-caption{display:block}.home-video-caption a{display:inline-block;margin-top:1rem}.page-mast h1,.contact-page h1{font-size:clamp(4.2rem,22vw,7rem)}.cycle-item{grid-template-columns:1fr;gap:.6rem}.archive-controls{grid-template-columns:1fr}.archive-row{grid-template-columns:.3fr 1.7fr}.archive-row>p,.archive-row em{grid-column:2}.archive-video,.archive-poster{grid-column:1/-1}.channel-list a{flex-direction:column}.site-footer{flex-direction:column;gap:.4rem}}
.site-nav{gap:clamp(.85rem,2vw,2rem)}
.home-video-grid{grid-template-columns:minmax(15rem,.72fr) minmax(0,1.28fr);align-items:start}.home-video--poster{grid-row:1/span 2}.poster-frame{margin:0;background:var(--paper)}.poster-frame img{width:100%;height:auto}.film-poster{max-width:34rem;margin:0 0 2.25rem}.film-poster img{width:100%;height:auto}.film-poster figcaption{padding:.8rem 0;border-bottom:1px solid var(--line);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}
.screening-room{background:var(--ink);color:#fff}.archive-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2.5rem,5vw,5rem) clamp(1.5rem,3vw,3rem)}.archive-video-card{border-top:1px solid rgba(255,255,255,.28);padding-top:1rem}.archive-video-copy{padding-top:1rem}.archive-video-copy span{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}.archive-video-copy h3{margin:.65rem 0 0;font-size:clamp(2rem,3.4vw,3.8rem)}
.page-letters .page-mast{background-image:var(--ladder-brand-image)}.manifesto{display:grid;grid-template-columns:.42fr 1.58fr;gap:clamp(3rem,8vw,8rem);align-items:start;scroll-margin-top:2rem}.manifesto-header{position:sticky;top:2rem}.manifesto-header h2{margin:0 0 1.5rem;font-size:clamp(4rem,8vw,8rem)}.manifesto-byline{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-size:1.2rem;letter-spacing:.08em}.manifesto-body{max-width:48rem}.manifesto-body>p{margin-bottom:1.65rem;font-size:clamp(1.05rem,1.5vw,1.25rem)}.manifesto-body .manifesto-thesis{margin:clamp(3.5rem,7vw,6rem) 0 2rem;font:500 clamp(2.15rem,4.2vw,4.25rem)/1 "Cormorant Garamond",Georgia,"Times New Roman",serif;letter-spacing:-.025em}.manifesto-body .manifesto-tag{margin-top:4rem;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-size:clamp(2.2rem,4vw,4rem)}
@media(max-width:900px){.home-video-grid,.archive-video-grid,.manifesto{grid-template-columns:1fr}.home-video--poster{grid-row:auto}.home-video--poster .poster-frame{max-width:32rem}.manifesto-header{position:static}.site-nav{gap:0}}

.writing-preview{display:grid;grid-template-columns:.35fr .9fr .75fr;gap:clamp(2rem,5vw,5rem);align-items:start;background:#fff}.writing-preview-copy h2{margin-bottom:1.5rem;font-size:clamp(3rem,5.5vw,5.8rem)}.writing-preview-copy>p{max-width:38rem;font-size:1.1rem}.writing-preview-feature{display:block;padding:1.5rem 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--line);text-decoration:none}.writing-preview-feature span,.writing-card span{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase}.writing-preview-feature strong{display:block;margin:1.2rem 0;font:400 clamp(2rem,3.6vw,3.8rem)/.96 "Cormorant Garamond",Georgia,"Times New Roman",serif}.writing-preview-feature p{margin:0}.page-writing .page-mast{background-image:var(--ladder-brand-image)}.writing-intro{display:grid;grid-template-columns:.35fr 1.65fr;gap:3rem}.writing-intro p:last-child{max-width:52rem;font:400 clamp(2rem,3.8vw,4rem)/1.05 "Cormorant Garamond",Georgia,"Times New Roman",serif}.writing-feed{background:#fff}.writing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 3rem;border-top:1px solid var(--line)}.writing-card{display:flex;min-height:20rem;flex-direction:column;justify-content:space-between;padding:2rem 0;border-bottom:1px solid var(--line);text-decoration:none}.writing-card h2{max-width:16ch;margin:1rem 0;font-size:clamp(2.2rem,4vw,4.2rem)}.writing-card p{max-width:42rem;margin-bottom:0}.writing-card-meta{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem}.writing-card:hover h2,.writing-card:focus-visible h2{text-decoration:underline;text-underline-offset:.2em}.medium-note{display:flex;justify-content:space-between;gap:2rem;align-items:center;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line)}.medium-note p{margin:0}.medium-status{color:#52606b;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
@media(max-width:900px){.writing-preview,.writing-intro{grid-template-columns:1fr}}
@media(max-width:600px){.medium-note{flex-direction:column;align-items:flex-start}.writing-grid{grid-template-columns:1fr}.writing-card{min-height:0}}
.founder-profile{display:grid;grid-template-columns:minmax(15rem,.68fr) minmax(0,1.32fr);gap:clamp(2rem,5vw,5rem);align-items:start}.founder-portrait{display:block;text-decoration:none}.founder-portrait img{width:100%;height:auto}.founder-portrait span{display:block;padding:.8rem 0;border-bottom:1px solid var(--line);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.founder-copy h2{margin-bottom:1.5rem;font-size:clamp(4rem,8vw,8rem)}.founder-copy p{max-width:50rem;font-size:1.15rem}.founder-copy a{text-underline-offset:.25em}
@media(max-width:900px){.founder-profile{grid-template-columns:1fr}.founder-portrait{max-width:34rem}}

/* Canonical record pages extend the existing editorial design. */
.reveal{opacity:1;transform:none}.page-record .site-header{position:relative;color:var(--ink);border-bottom:1px solid var(--line)}.record-mast{padding:5rem var(--gutter) 3rem;background:var(--blue)}.record-mast h1{max-width:18ch;font-size:clamp(3rem,7vw,7rem);line-height:1.02;overflow-wrap:anywhere;margin-bottom:1.5rem}.record-mast>p:last-child{max-width:55rem;font-size:1.15rem}.record-body{max-width:75rem;margin:auto;padding:3rem var(--gutter)}.record-body h2{font-size:clamp(2rem,4vw,3rem);line-height:1.1;margin-top:2.5rem}.record-body p,.record-body li{font-size:1.05rem}.record-body li{margin:.7rem 0}.record-meta,.record-updated{font-size:.875rem;color:#394650}.record-updated{padding:1rem var(--gutter)}.record-body .video-frame{margin-bottom:2rem}.related{display:flex;flex-wrap:wrap;gap:1rem 2rem;padding-top:2rem;margin-top:3rem;border-top:1px solid var(--line)}.site-footer{flex-wrap:wrap;font-size:.8rem;letter-spacing:.06em}.site-footer nav{display:flex;gap:1rem;flex-wrap:wrap}.bio-layout{display:grid;grid-template-columns:1fr 2fr;gap:3rem}.bio-layout img{height:auto;width:100%}.film-record-copy h2 a,.archive-video-copy h3 a,.archive-row h2 a{text-decoration-thickness:1px;text-underline-offset:.12em}.page-record .manifesto-header h2{font-size:clamp(2.8rem,6vw,5rem)}.page-record .manifesto{grid-template-columns:1fr 2fr;gap:3rem}.page-record .site-nav.is-open{color:white}@media(max-width:900px){.bio-layout,.page-record .manifesto{grid-template-columns:1fr}.bio-layout>img{max-width:24rem}}

/* Keep film links available when video services cannot load. */
.video-frame{position:relative;aspect-ratio:auto}.video-frame iframe{aspect-ratio:16/9;height:auto}.video-fallback{display:block;padding:.5rem 1rem;color:#fff;background:#080d12;font-size:.875rem;line-height:1.4;text-underline-offset:.2em}
a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid currentColor;outline-offset:4px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

.breadcrumbs{padding:1rem var(--gutter);border-bottom:1px solid var(--line);font-size:.875rem}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;list-style:none;margin:0;padding:0}.breadcrumbs li+li::before{content:"/";margin-right:1.5rem;color:#52606b}.film-next,.film-inquiry{padding-top:1.5rem;margin-top:2rem;border-top:1px solid var(--line)}.film-next ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem}.film-next li{padding:.5rem 0}.film-next a{display:block;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-size:1.75rem;line-height:1.15}.film-next span{display:block;margin-top:.5rem;font-size:.875rem;color:#394650}.film-inquiry p,.contact-guidance{max-width:48rem}.film-inquiry a{overflow-wrap:anywhere}@media(max-width:600px){.film-next ul{grid-template-columns:1fr}.breadcrumbs{line-height:1.6}}


/* Commercial inquiries, research and travel: the existing editorial palette and type. */
.hero-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.75rem 1rem;margin-top:2rem}.hero-actions a{border:1px solid rgba(255,255,255,.75);background:rgba(8,26,38,.18);padding:.75rem 1rem;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}.hero-actions a:hover{background:rgba(8,26,38,.4)}
.section-jumps{display:flex;flex-wrap:wrap;gap:.8rem 1.5rem;margin:2rem 0 3rem;padding:1.25rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.9rem}.section-jumps a{text-underline-offset:.25em}.lead-copy{max-width:55rem;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-size:clamp(1.7rem,3vw,2.7rem)!important;line-height:1.2}.offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem}.offer{scroll-margin-top:2rem;border-top:1px solid var(--ink);padding-top:1.5rem;min-width:0}.offer h2{margin-top:1rem}.offer p{max-width:39rem}.offer .button-link{margin-top:1rem;line-height:1.6}.offer-secondary{display:block;width:fit-content;margin-top:1rem;font-size:.95rem;text-underline-offset:.2em}.working-note{margin-top:4rem;padding:2rem clamp(1rem,3vw,2.5rem);background:#e8edf0;border-top:1px solid var(--line)}.working-note h2{margin-top:.5rem}.working-note p{max-width:56rem}.working-note .button-link{margin-top:1rem}.working-note a[href^="mailto:"]{overflow-wrap:anywhere}.small-note{font-size:.9rem!important;color:#394650;max-width:44rem;margin-top:1.2rem}.research-feature{padding:2rem 0 3rem;border-bottom:1px solid var(--line)}.research-feature h2{font-size:clamp(2.6rem,5vw,4.6rem);margin-top:1rem}.research-feature>p{max-width:49rem}.research-feature .button-link{margin-top:1rem}.research-reading{max-width:49rem}.research-callout{background:#e8edf0}.research-callout h2{font-size:clamp(2.8rem,5.5vw,5.5rem);margin-bottom:1.5rem}.research-callout p{max-width:47rem}.poem-record-link{margin:2rem 0 0;font-size:.95rem}.travel-intro{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.travel-intro h2{margin-top:.5rem}.travel-intro figure{margin:0}.travel-intro img{width:100%;height:24rem;object-fit:cover}.travel-intro figcaption{font-size:.8rem;margin-top:.8rem}.support-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin-top:3rem}.support-options>section{border-top:1px solid var(--ink);padding-top:1.5rem}.support-options h2{margin-top:1rem}.home-work{background:var(--paper)}.home-work-deck{max-width:47rem;font-size:1.15rem}.home-offers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 3rem;margin-top:3rem}.home-offers a{padding:1.5rem 0;border-top:1px solid var(--ink);text-decoration:none}.home-offers span{display:block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.home-offers strong{display:block;margin-top:.8rem;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(2rem,4vw,3.6rem);line-height:1.05}.home-offers a:hover strong{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}.home-travel{display:grid;grid-template-columns:1.4fr .6fr;gap:4rem;background:var(--blue)}.home-travel h2{font-size:clamp(3rem,6.5vw,6.5rem)}.home-travel p{max-width:45rem}.home-support{border-top:1px solid var(--ink);padding-top:1.5rem}.home-support h3{font-size:clamp(2.4rem,4vw,4rem)}.inquiry-options{font-size:.95rem!important;margin-top:1.25rem}.intro-band div>p+p{margin-top:1.25rem}
@media(max-width:1100px){.site-header{min-height:4.8rem}.menu-toggle{display:block}.site-nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:1rem var(--gutter);background:rgba(8,26,38,.97);color:#fff}.site-nav.is-open{display:flex}.site-nav a{padding:.8rem 0}}
@media(max-width:800px){.offer-grid,.travel-intro,.support-options,.home-travel{grid-template-columns:1fr}.offer-grid{gap:2.5rem}.support-options{gap:2.5rem}.home-travel{gap:3rem}.travel-intro img{height:16rem}}
@media(max-width:550px){.home-offers{grid-template-columns:1fr}.section-jumps{flex-direction:column;gap:.85rem}.working-note{margin-top:3rem}.hero-actions a{font-size:.7rem}.site-footer nav{gap:.8rem 1rem}}

/* The Yellow Hotel teaser: reserve image/player space before playback. */
.film-teaser{margin:1.5rem 0 3rem}.record-body .film-teaser h2{margin-top:0}.teaser-player{position:relative;aspect-ratio:16/9;background:#080d12;overflow:hidden}.teaser-play{display:block;width:100%;height:100%;padding:0;border:0;background:#080d12;color:white;cursor:pointer;position:relative}.teaser-play img{display:block;width:100%;height:100%;object-fit:cover}.teaser-play span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:.8rem 1.1rem;background:rgba(0,0,0,.8);border:1px solid white;font:500 .9rem Inter,sans-serif}.teaser-play:focus-visible{outline:3px solid #d2b168;outline-offset:-3px}.teaser-player iframe{display:block;width:100%;height:100%;border:0}.teaser-fallback{display:inline-block;margin:.75rem 0;font-size:.875rem;text-underline-offset:.2em}

/* Letters and Thoughts publishing imprint */
/* Keep navigation usable as the official profile joins the primary menu. */
.menu-toggle{min-height:44px;min-width:44px;cursor:pointer}
@media(max-width:1250px){.site-header{min-height:4.8rem}.menu-toggle{display:block}.site-nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:1rem var(--gutter);background:rgba(8,26,38,.97);color:#fff}.site-nav.is-open{display:flex}.site-nav a{padding:.8rem 0}}
.imprint-feature{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);background:#fff;align-items:start}.imprint-feature h2{font-size:clamp(4rem,8vw,8rem);margin:.5rem 0 1rem}.imprint-byline{font-size:1rem;max-width:28rem}.imprint-status{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.imprint-copy{max-width:40rem;padding-top:1.25rem}.imprint-copy>p{font-size:1.1rem}.imprint-journal-link{display:block;width:fit-content;margin-top:1.5rem}@media(max-width:750px){.imprint-feature{grid-template-columns:1fr}.imprint-copy{padding-top:0}}

/* October usability and loading pass. */
.home-hero::after{background:linear-gradient(180deg,rgba(8,26,38,.57),rgba(8,26,38,.42) 52%,rgba(8,26,38,.60))}
.site-header:not(.page-record .site-header):not(.page-start .site-header){text-shadow:0 1px 4px rgba(0,0,0,.6)}
.hero-actions a{background:rgba(8,26,38,.65)}
.home-title,.hero-caption{text-shadow:0 2px 12px rgba(0,0,0,.35)}
.page-mast::before{background:linear-gradient(90deg,rgba(8,26,38,.78),rgba(8,26,38,.48))}
.contact-page::before{background:rgba(8,26,38,.65)}
.menu-toggle{min-width:48px;min-height:48px;cursor:pointer}
.site-nav a,.site-footer nav a,.related a,.section-jumps a{display:inline-flex;align-items:center;min-height:44px}
.site-footer nav{gap:.25rem 1rem}
button,input,select{font:inherit}input[type="search"]{width:100%;min-height:48px;padding:.65rem .8rem;border:1px solid #52606b;background:#fff;color:var(--ink);border-radius:0}
.archive-search{display:grid;gap:.5rem;margin-bottom:1.5rem;max-width:40rem;font-size:.875rem}
:focus-visible{outline:3px solid #12628a;outline-offset:4px}
.site-footer a:focus-visible,.home-hero a:focus-visible{outline-color:#fff}
.video-poster{aspect-ratio:16/9;position:relative;background:#080d12}
.video-load{display:block;position:relative;width:100%;height:100%;padding:0;border:0;cursor:pointer;color:#fff;background:#080d12}
.video-load img{width:100%;height:100%;object-fit:contain;position:absolute;inset:0}
.video-load span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:.85rem 1.25rem;background:rgba(0,0,0,.85);border:1px solid #fff;white-space:nowrap}
.video-load:focus-visible{outline:3px solid #fff;outline-offset:-5px}
.video-poster iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
img{height:auto}.hero-panorama{height:100%}
@media(max-width:600px){.record-mast{padding-top:3rem}.wordmark{letter-spacing:.14em}.record-body{padding-top:2rem}.home-title{padding-top:7rem;padding-bottom:7rem}.record-body,.intro-band,.writing-preview,.film-record-copy{min-width:0}.record-meta{overflow-wrap:anywhere}.site-header{gap:1rem}.home-title h1{font-size:clamp(3rem,17vw,6rem)}}

.video-load::before{content:attr(data-label);position:absolute;left:10%;right:10%;top:18%;font:400 clamp(1.3rem,3vw,3rem)/1.1 "Cormorant Garamond",Georgia,"Times New Roman",serif;text-align:left;color:#f7f4ec}.video-load img[hidden]{display:none}.video-load img{z-index:1}.video-load span{z-index:2}

.metrics-choice{position:fixed;z-index:100;bottom:1rem;left:1rem;right:1rem;max-width:40rem;margin-left:auto;padding:1.2rem 1.4rem;background:#f7f4ec;color:#101820;border:1px solid #52606b;box-shadow:0 5px 30px #0003}.metrics-choice[hidden]{display:none}.metrics-choice p{margin:0 0 .8rem;font-size:.9rem;line-height:1.5}.metrics-choice>div{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center}.metrics-choice button,.metrics-settings{font:inherit;min-height:44px;cursor:pointer}.metrics-choice button{background:#101820;color:#fff;border:1px solid #101820;padding:.5rem .8rem}.metrics-choice button:nth-child(2){background:transparent;color:#101820}.metrics-settings{background:transparent;border:1px solid currentColor;color:inherit;padding:.3rem .7rem;font-size:.8rem}.metrics-choice a{font-size:.85rem}.metrics-choice :focus-visible{outline:3px solid #12628a;outline-offset:3px}

/* Episode browsing uses the existing Ladder palette and type. */
.episode-section{margin:3rem 0}.episode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.episode-card{padding:1.5rem;border:1px solid currentColor}.episode-card h3{font-family:'Cormorant Garamond',Georgia,'Times New Roman',serif;font-size:2rem;line-height:1.15;margin:.65rem 0}.source-list li{margin:1rem 0}.source-list time{font-size:.85em}.visually-hidden{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:600px){.episode-grid{grid-template-columns:1fr}}

/* Clear series entrances while preserving the established navigation. */
@media(min-width:1251px){.site-nav{gap:clamp(.65rem,1.3vw,1.4rem)}.site-nav a{letter-spacing:.1em}.wordmark{flex-shrink:0}}

/* Homepage photographic chapters: existing published assets, no new media copies. */
.page-home .photo-band{background-color:#101820;background-image:linear-gradient(100deg,rgba(5,18,27,.86),rgba(5,18,27,.74)),var(--chapter-photo);background-size:cover;background-position:center;color:#f7f4ec;border-color:rgba(247,244,236,.36)}
.page-home .intro-band{--chapter-photo:url('/assets/tropical-still-water-optimized-1536.webp?v=clean-20261102')}
.page-home .selected{--chapter-photo:url('/assets/tropical-cliff-sea-optimized-1536.webp?v=clean-20261102')}
.page-home .cycle{--chapter-photo:url('/assets/tropical-rock-pool-optimized-1536.webp?v=clean-20261102')}
.page-home .writing-preview{--chapter-photo:url('/assets/tropical-sunset-optimized-1536.webp?v=clean-20261102')}
.page-home .home-work{--chapter-photo:url('/assets/tropical-beach-life-optimized-1536.webp?v=clean-20261102')}
.page-home .home-travel{padding:0;gap:0;align-items:stretch;background:#101820;grid-template-columns:1.2fr 1fr}
.page-home .home-travel-story{--chapter-photo:url('/assets/tropical-island-optimized-1536.webp?v=clean-20261102')}
.page-home .home-support{--chapter-photo:url('/assets/sea-clouds-3840.webp');border-top:0}
.page-home .home-travel>div{padding:clamp(4rem,7vw,7rem) var(--gutter);min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:33rem}
.page-home .contact-strip{--chapter-photo:url('/assets/tropical-sunset-optimized-1536.webp?v=clean-20261102');min-height:24rem;align-items:center}
.page-home .photo-band a{color:inherit;text-underline-offset:.3em}
.page-home .photo-band .index-label{color:#e5d2ac;font-weight:600;letter-spacing:.19em}
.page-home .photo-band .button-link{background:#f7f4ec;color:#101820;border:1px solid #f7f4ec;min-height:48px;display:inline-flex;align-items:center;justify-content:center;line-height:1.5;max-width:100%}
.page-home .photo-band .button-link:hover{background:#dce9ee;border-color:#dce9ee}
.page-home .photo-band a:focus-visible{outline:3px solid #f3d38b;outline-offset:5px}
.page-home .photo-band h2,.page-home .photo-band h3{max-width:19ch;text-wrap:balance}
.page-home .photo-band p{line-height:1.7}
.page-home .photo-band .home-video-caption>div>span{color:#f7f4ec}
.page-home .photo-band .home-offers a,.page-home .photo-band .writing-preview-feature{border-color:rgba(247,244,236,.5)}
.page-home .photo-band .home-offers a:hover{background:rgba(255,255,255,.07)}
.page-home .photo-band .writing-preview-feature{padding:1.5rem;background:rgba(5,18,27,.3)}
.page-home .cycle-poster figcaption{color:#101820}
.page-home .contact-strip a{font-size:clamp(1.5rem,3.2vw,3.6rem);line-height:1.3;overflow-wrap:anywhere}
.page-home .home-support h3{font-size:clamp(2.7rem,4.3vw,4.7rem);line-height:1.05;margin-bottom:1.5rem}
@media(max-width:800px){.page-home .home-travel{grid-template-columns:1fr}.page-home .home-travel>div{min-height:28rem;padding:4.5rem var(--gutter)}.page-home .contact-strip{gap:1rem;min-height:22rem}.page-home .photo-band{background-position:center}.page-home .writing-preview-feature{margin-top:.5rem}}
/* Mobile and installed-app shell. Core content stays ordinary HTML. */
html{scroll-padding-top:1rem}body{padding-bottom:env(safe-area-inset-bottom)}img,video,iframe{max-width:100%}button,input,select,textarea{font:inherit}.menu-toggle{min-height:44px;min-width:60px}a,button{-webkit-tap-highlight-color:rgba(114,169,211,.25)}
.library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:2rem}.library-card{position:relative;display:flex;min-height:24rem;flex-direction:column;justify-content:flex-end;padding:2rem;overflow:hidden;background:#101820;color:#f7f4ec;text-decoration:none;isolation:isolate}.library-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.library-card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(5,18,27,.25),rgba(5,18,27,.92))}.library-card h2{font-size:clamp(2.5rem,4vw,4rem);margin:.5rem 0}.library-card p{margin:0;max-width:38ch}.library-card:hover h2{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.15em}.library-card:focus-visible{outline:4px solid #bd842d;outline-offset:4px}.app-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;margin-top:2rem}.app-steps>section{border-top:1px solid var(--line);padding-top:1.5rem}.app-install-button{padding:1rem 1.5rem;border:1px solid #101820;background:#101820;color:#fff;min-height:48px;cursor:pointer}.app-install-button[hidden]{display:none}
@media(max-width:600px){.library-grid,.app-steps{grid-template-columns:1fr}.library-card{min-height:22rem;padding:1.5rem}.site-nav{max-height:calc(100svh - 5rem);overflow-y:auto}.record-body{overflow-wrap:anywhere}input,select,textarea{font-size:16px}.home-offers a,.button-link{min-height:44px}.site-footer nav{flex-wrap:wrap}}
@media(display-mode:standalone){.site-header{padding-top:max(1.2rem,env(safe-area-inset-top))}.site-footer{padding-bottom:max(1.4rem,env(safe-area-inset-bottom))}}
@media(max-width:600px){.page-home .home-title{width:100%;box-sizing:border-box}.page-home .home-title h1{font-size:clamp(2.6rem,13vw,5.2rem);line-height:.92;letter-spacing:-.045em}.page-home .hero-deck{max-width:30ch;margin-left:auto;margin-right:auto;font-size:.82rem;line-height:1.6}.page-home .hero-actions{flex-wrap:wrap}.page-home .hero-actions a{min-height:48px;display:inline-flex;align-items:center;justify-content:center}}

.page-library .record-mast,.page-app .record-mast{color:#f7f4ec;background-color:#101820;background-image:linear-gradient(100deg,rgba(5,18,27,.86),rgba(5,18,27,.74)),var(--ladder-brand-image);background-size:cover;background-position:center}.page-app .record-mast{background-image:linear-gradient(100deg,rgba(5,18,27,.86),rgba(5,18,27,.74)),var(--ladder-brand-image)}
/* Brand footer: editorial serif navigation, quiet sans-serif metadata. */
.site-footer{display:grid;grid-template-columns:minmax(14rem,.85fr) minmax(0,1.75fr);grid-template-areas:"brand explore" "location social" "settings social";align-items:start;gap:1.5rem clamp(2rem,5vw,5rem);padding:3rem var(--gutter);color:#f7f4ec;border-top:1px solid rgba(247,244,236,.25);text-transform:none;font-family:"Inter",Arial,sans-serif;font-weight:400;line-height:1.5}
.site-footer>span:first-child{grid-area:brand;max-width:24ch;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.35rem;font-weight:500;line-height:1.35;letter-spacing:.065em;text-transform:uppercase}
.site-footer>span:nth-of-type(2){grid-area:location;color:#cad1d4;font-family:"Inter",Arial,sans-serif;font-size:.7rem;line-height:1.6;letter-spacing:.14em;text-transform:uppercase}
.site-footer>nav:first-of-type{grid-area:explore;display:flex;gap:.5rem 1.6rem;align-items:baseline;flex-wrap:wrap;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.5rem;font-weight:500;line-height:1.25;letter-spacing:.01em}
.site-footer nav a{text-decoration:none;min-height:44px;max-width:100%;overflow-wrap:anywhere}
.site-footer nav a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.3em}
.site-footer>nav:last-of-type{grid-area:social;display:flex;gap:.25rem 1.5rem;align-items:baseline;flex-wrap:wrap;padding-top:.8rem;border-top:1px solid rgba(247,244,236,.2);font-family:"Inter",Arial,sans-serif;font-size:.72rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase}
.site-footer .metrics-settings{grid-area:settings;justify-self:start;max-width:100%;padding:.55rem 1rem;border:1px solid rgba(247,244,236,.55);background:transparent;color:#f7f4ec;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.2rem;font-weight:500;line-height:1.3;letter-spacing:.015em;text-transform:none;min-height:44px}
.site-footer .metrics-settings:hover{background:rgba(247,244,236,.08);border-color:#f7f4ec}.site-footer :focus-visible{outline:3px solid #f3d38b;outline-offset:4px}
@media(max-width:800px){.site-footer{grid-template-columns:1fr;grid-template-areas:"brand" "explore" "location" "social" "settings";gap:1.2rem;padding:2.5rem var(--gutter)}.site-footer>span:first-child{max-width:none;font-size:1.2rem}.site-footer>nav:first-of-type{gap:.4rem 1.5rem;font-size:1.4rem}.site-footer>nav:last-of-type{font-size:.7rem;gap:.2rem 1.25rem}}
@media(forced-colors:active){.site-footer a,.site-footer button{forced-color-adjust:auto}}
@media print{.site-header,.site-footer,.metrics-choice,.metrics-settings,.app-install-button{display:none!important}.photo-band,.home-hero,.page-mast,.record-mast{background:white!important;color:black!important}.home-hero{min-height:0}.home-title{padding:1rem}.home-hero::after{display:none}.hero-panorama{display:none}a{color:black}a[href^="http"]::after{content:" (" attr(href) ")";font-size:.75em;overflow-wrap:anywhere}.library-card{background:white;color:black;border:1px solid #888;min-height:0;break-inside:avoid}.library-card::before{display:none}.library-card img{display:none}}

@media print{body{background:white!important;color:black!important}.photo-band .index-label,.photo-band a{color:black!important}}

/* One app, the complete public website. */
/* Each app destination has a distinct owner-selected Philippine photograph. */
.app-feature-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:2.5rem 0}
.app-feature-menu>a{
 display:flex;flex-direction:column;justify-content:flex-end;min-width:0;min-height:11rem;
 padding:1.4rem;border:1px solid rgba(229,210,172,.48);color:#f7f4ec;background-color:#101820;
 background-image:linear-gradient(100deg,rgba(16,24,32,.82),rgba(16,24,32,.78)),var(--app-photo,var(--ladder-brand-image));
 background-position:var(--app-photo-position,center);background-size:cover;
 font-family:"Cormorant Garamond",Georgia,serif;font-size:2rem;line-height:1.15;text-decoration:none;overflow-wrap:anywhere;
}
.app-feature-menu span{display:block;max-width:35ch;font-family:Inter,Arial,sans-serif;font-size:.875rem;line-height:1.55;margin-top:.6rem;color:#f7f4ec}
.app-feature-menu>a:hover{border-color:#e5d2ac;text-decoration:underline;text-underline-offset:.2em;background-image:linear-gradient(100deg,rgba(16,24,32,.88),rgba(16,24,32,.82)),var(--app-photo,var(--ladder-brand-image))}
.app-feature-menu>a:focus-visible{outline:3px solid #e5d2ac;outline-offset:-6px;box-shadow:0 0 0 2px #101820}
/* Installation headings use distinct photographs; steps stay on solid cream. */
.app-steps>section{border:0;padding-top:0;min-width:0}
.app-steps>section>h2{display:flex;align-items:flex-end;min-height:7rem;padding:1.1rem 1.3rem;margin:0 0 1rem;color:#f7f4ec;background-color:#101820;background-image:linear-gradient(100deg,rgba(16,24,32,.82),rgba(16,24,32,.78)),var(--app-photo,var(--ladder-brand-image));background-size:cover;background-position:var(--app-photo-position,center);overflow-wrap:anywhere}
@media(max-width:480px){.app-feature-menu{grid-template-columns:1fr;gap:1rem}.app-feature-menu>a{min-height:10rem;padding:1.2rem;font-size:1.8rem}}
@media(forced-colors:active){.app-feature-menu>a,.app-steps>section>h2{background:Canvas;color:CanvasText;border:1px solid CanvasText}.app-feature-menu span{color:CanvasText}.app-feature-menu>a:focus-visible{outline-color:Highlight;box-shadow:none}}
@media print{.app-feature-menu>a,.app-steps>section>h2{background:white!important;color:black!important;border:1px solid #aaa;min-height:0;padding:1rem}.app-feature-menu span{color:black!important}}

/* Ladder photographic page openings. Existing public images, one calm ink overlay. */
.page-record[class] .record-mast,.watch-page .watch-heading,.page-andy .andy-hero{
 color:#f7f4ec;background-color:#101820;
 background-image:linear-gradient(100deg,rgba(5,18,27,.86),rgba(5,18,27,.78)),var(--ladder-hero-image,var(--ladder-brand-image));
 background-position:center;background-size:cover;
}
.page-record[class] .record-mast{padding-block:clamp(3.5rem,7vw,6rem);min-height:clamp(20rem,43vw,31rem);display:flex;flex-direction:column;justify-content:center}
.page-record[class] .record-mast h1{max-width:20ch}
.page-research{--ladder-hero-image:url('/assets/tropical-rock-pool-optimized-1536.webp?v=clean-20261102')}
.page-work,.page-inquiry{--ladder-hero-image:url('/assets/tropical-beach-life-optimized-1536.webp?v=clean-20261102')}
.page-app{--ladder-hero-image:var(--ladder-brand-image)}
.page-travel{--ladder-hero-image:url('/assets/tropical-cliff-sea-optimized-1536.webp?v=clean-20261102')}
.page-support{--ladder-hero-image:url('/assets/tropical-sunset-optimized-1536.webp?v=clean-20261102')}
.page-licensing{--ladder-hero-image:url('/assets/sea-clouds-3840.webp')}
.film-theme-dead-musician{--ladder-hero-image:var(--ladder-brand-image)}
.film-theme-little-minds{--ladder-hero-image:var(--ladder-brand-image)}
.film-theme-yellow-hotel{--ladder-hero-image:var(--ladder-brand-image)}
.page-home .home-hero::after{background:linear-gradient(180deg,rgba(5,18,27,.82),rgba(5,18,27,.78) 52%,rgba(5,18,27,.86))}
.page-mast::before,.page-contact .contact-page::before{background:linear-gradient(100deg,rgba(5,18,27,.86),rgba(5,18,27,.78))}
.page-mast,.page-contact .contact-page{isolation:isolate;color:#f7f4ec}
.page-record[class] .record-mast :is(p,a,.eyebrow,.record-meta,.small-note),.watch-page .watch-heading :is(p,a,.eyebrow,.record-meta),.page-mast :is(p,a,.eyebrow),.page-contact .contact-page :is(p,a){color:#f7f4ec}
.page-record[class] .record-mast a,.watch-page .watch-heading a,.page-mast a,.page-contact .contact-page a{text-decoration-thickness:1px;text-underline-offset:.2em}
.page-record[class] .record-mast :focus-visible,.watch-page .watch-heading :focus-visible,.page-mast :focus-visible,.page-contact .contact-page :focus-visible,.page-start .start-intro :focus-visible,.page-andy .andy-hero :focus-visible{outline:3px solid #f3d38b;outline-offset:5px}
.watch-page .watch-heading{padding:clamp(2rem,5vw,4rem);margin-bottom:2rem;min-height:16rem;display:flex;flex-direction:column;justify-content:center}
.watch-page .watch-heading h1{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(2.6rem,6vw,5rem);line-height:1.05}
.watch-page .watch-heading .record-meta{margin-bottom:0}
/* Keep Start Here's original photograph and caption, now behind the opening copy. */
.page-start .start-intro{position:relative;display:block;isolation:isolate;overflow:hidden;min-height:0;background:#101820;color:#f7f4ec}
.page-start .start-intro::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(5,18,27,.86),rgba(5,18,27,.78));pointer-events:none}
.page-start .start-intro .start-intro-copy{max-width:65rem;padding-block:clamp(3rem,6vw,5rem) 2rem}
.page-start .start-intro :is(p,a,.eyebrow,.start-note){color:#f7f4ec}
.page-start .start-intro .start-landscape{position:static;min-height:0;max-height:none;margin:0;padding:0 var(--gutter) 2.5rem;background:none}
.page-start .start-intro .start-landscape img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}
.page-start .start-intro .start-landscape figcaption{position:static;padding:0;max-width:40rem;background:none;color:#f7f4ec;font-size:.8rem;letter-spacing:.04em}
.page-start .start-intro .start-primary,.page-andy .andy-hero .andy-actions .button-link{background:#f7f4ec;color:#101820;border:1px solid #f7f4ec;min-height:44px}
.page-andy .andy-hero{max-width:none}
.page-andy .andy-hero :is(p,a,.eyebrow){color:#f7f4ec}
.page-andy .andy-hero .andy-portrait figcaption{color:#f7f4ec;border-color:rgba(247,244,236,.4)}
@media(max-width:600px){.page-record[class] .record-mast{min-height:20rem}.watch-page .watch-heading{padding:2rem 1.25rem;min-height:14rem}.page-start .start-intro .start-intro-copy{padding-top:3rem}.page-andy .andy-hero{padding-top:3rem}}
@media print{.page-record[class] .record-mast,.watch-page .watch-heading,.page-start .start-intro,.page-andy .andy-hero{background:white!important;color:black!important;min-height:0}.page-start .start-intro::after{display:none}.page-start .start-intro .start-landscape img{display:none}.page-record[class] .record-mast :is(p,a,.eyebrow,.record-meta,.small-note),.watch-page .watch-heading :is(p,a,.eyebrow,.record-meta),.page-start .start-intro :is(p,a,.eyebrow,.start-note),.page-andy .andy-hero :is(p,a,.eyebrow){color:black!important}}
@media print{.page-mast::before,.page-contact .contact-page::before{display:none!important}}
/* Saved films: device-local utility, with no account or paid-access claim. */
.saved-work-controls{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center;margin-top:1.5rem}
.saved-work-button,.saved-work-clear{font:inherit;min-height:44px;padding:.7rem 1rem;border:1px solid #101820;background:#101820;color:#f7f4ec;cursor:pointer}
.record-mast .saved-work-button{background:#f7f4ec;color:#101820;border-color:#f7f4ec}
.saved-work-status{font:400 .875rem/1.6 Inter,Arial,sans-serif;max-width:42ch}
.saved-work-list{list-style:none;padding:0;display:grid;gap:1rem;margin:1.5rem 0}
.saved-work-item{padding:1.25rem;background:#fffdf8;border:1px solid #bdc7c9;display:flex;justify-content:space-between;gap:1rem;align-items:center}
.saved-work-item a{font:400 clamp(1.6rem,4vw,2.3rem)/1.2 "Cormorant Garamond",Georgia,serif;color:#101820;overflow-wrap:anywhere}
.saved-work-item button{font:inherit;min-height:44px;padding:.65rem .9rem;background:transparent;color:#225779;border:1px solid #7a8c97;cursor:pointer}
.saved-work-controls :focus-visible,.saved-work-item :focus-visible,.saved-work-clear:focus-visible{outline:3px solid #225779;outline-offset:4px}
.record-mast .saved-work-controls :focus-visible{outline-color:#e5d2ac}
@media(max-width:480px){.saved-work-item{align-items:flex-start;flex-direction:column}.saved-work-controls{align-items:flex-start;flex-direction:column}}
/* iPhone edges and touch controls retain Ladder's photographic, editorial style. */
.site-header,.site-footer,.record-mast,.record-body,.record-updated,.breadcrumbs,.section-pad,.home-title{
 padding-left:max(var(--gutter),env(safe-area-inset-left,0px));
 padding-right:max(var(--gutter),env(safe-area-inset-right,0px));
}
@media(max-width:900px){
 .site-nav{padding-left:max(var(--gutter),env(safe-area-inset-left,0px));padding-right:max(var(--gutter),env(safe-area-inset-right,0px))}
}
@media(max-width:900px),(pointer:coarse){
 .wordmark{display:inline-flex;align-items:center;min-height:44px;line-height:1.3}
 button,[role="button"],.site-nav a,.app-feature-menu>a{min-height:44px}
 input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea{font-size:max(1rem,16px);line-height:1.5;min-height:44px;max-width:100%}
}
/* Only the decorative app mark uses glass; reading and forms keep solid surfaces. */
.page-app[class] .record-mast{display:grid;grid-template-columns:minmax(0,1fr) minmax(9rem,17rem);align-items:center;gap:clamp(2rem,5vw,5rem)}
.app-mast-copy{min-width:0}
.app-mast-copy>p:last-child{max-width:45ch;margin-bottom:0;font-size:1.15rem;line-height:1.6}
.app-brand-visual{width:min(100%,17rem);aspect-ratio:1;margin:0;justify-self:end;padding:clamp(.7rem,1.5vw,1.1rem);border:1px solid rgba(247,244,236,.46);border-radius:24%;background:#203846;box-shadow:0 1.2rem 3rem rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.2)}
.app-brand-visual img{width:100%;height:auto;border-radius:20%}
@supports ((backdrop-filter:blur(12px)) or (-webkit-backdrop-filter:blur(12px))){
 .app-brand-visual{background:rgba(32,56,70,.58);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
}
@media(max-width:600px){
 .page-app[class] .record-mast{grid-template-columns:1fr;gap:2rem}
 .app-brand-visual{width:9rem;justify-self:start}
 .app-steps ol{padding-left:1.35rem}
}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){
 .app-brand-visual{background:#203846;-webkit-backdrop-filter:none;backdrop-filter:none;border-color:#f7f4ec;box-shadow:none}
}
@media(forced-colors:active){.app-brand-visual{background:Canvas;border-color:CanvasText;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}}

/* Give the growing catalogue a full navigation row instead of splitting link words. */
@media(min-width:901px){
 .site-header{flex-wrap:wrap;align-items:flex-start;gap:1rem 2rem}
 .site-header .wordmark{flex:1 0 100%;white-space:nowrap}
 .site-header .site-nav{flex:1 1 100%;width:100%;flex-wrap:wrap;justify-content:flex-start;gap:.4rem 1.4rem}
 .site-header .site-nav a{white-space:nowrap;font-size:.8rem;letter-spacing:.12em}
}

/* Current logo: the hand-drawn mark over the owner’s beach photograph. */
.site-header .wordmark{display:inline-flex;align-items:center;gap:.65rem}
.wordmark-icon{width:2.25rem;height:2.25rem;flex:none;border-radius:24%;object-fit:cover}
@media(max-width:900px){.site-header{gap:1rem}.site-header .wordmark{flex:1 1 0;min-width:0;max-width:none}.site-header .wordmark span{min-width:0}.site-header .menu-toggle{flex:none}}
@media(max-width:600px){.site-header .wordmark{font-size:.72rem;letter-spacing:.14em;line-height:1.35}.wordmark-icon{width:2rem;height:2rem}}

/* Center the owner’s beach photograph behind the brand headline. */
.hero-panorama{object-position:center}

/* Stable semantic mappings: rearranging a menu never changes its photograph. */
.app-feature-menu [data-landscape="island"]{--app-photo:url('/assets/beach-hero-3840.webp')}
.app-feature-menu [data-landscape="cliff-sea"]{--app-photo:url('/assets/tropical-cliff-sea-optimized-1536.webp?v=clean-20261102')}
.app-feature-menu [data-landscape="beach-life"]{--app-photo:url('/assets/tropical-beach-life-optimized-1536.webp?v=clean-20261102')}
.app-feature-menu [data-landscape="rock-pool"]{--app-photo:url('/assets/tropical-rock-pool-optimized-1536.webp?v=clean-20261102')}
.app-feature-menu [data-landscape="still-water"]{--app-photo:url('/assets/tropical-still-water-optimized-1536.webp?v=clean-20261102')}
.app-feature-menu [data-landscape="sunset"]{--app-photo:url('/assets/tropical-sunset-optimized-1536.webp?v=clean-20261102')}
.app-feature-menu [data-landscape="sea-clouds"]{--app-photo:url('/assets/sea-clouds-3840.webp')}
.app-feature-menu [data-landscape="palawan-canoe-island"]{--app-photo:url('/assets/philippines-palawan-canoe-island.jpg')}
.app-feature-menu [data-landscape="siquijor-palm-canopy"]{--app-photo:url('/assets/philippines-siquijor-palm-canopy.jpg')}
.app-feature-menu [data-landscape="catmon-gorge"]{--app-photo:url('/assets/philippines-catmon-gorge.jpg')}
.app-feature-menu [data-landscape="siquijor-palm-beach"]{--app-photo:url('/assets/philippines-siquijor-palm-beach.jpg')}
.app-steps [data-install="mac"]{--app-photo:url('/assets/philippines-catmon-dawn.jpg')}
.app-steps [data-install="android"]{--app-photo:url('/assets/philippines-siquijor-waterfall.jpg')}
.app-steps [data-install="ios"]{--app-photo:url('/assets/philippines-palawan-aerial.jpg')}
.app-steps [data-install="offline"]{--app-photo:url('/assets/philippines-dumaguete-waterfall.jpg')}
.app-feature-menu [data-landscape="siquijor-palm-canopy"]{--app-photo-position:center 35%}
.app-feature-menu [data-landscape="catmon-gorge"]{--app-photo-position:center 58%}
/* Category entrances share the palette and typography, not one repeated scene. */
.page-films .page-mast{background-image:url('/assets/tropical-cliff-sea-optimized-1536.webp?v=clean-20261102')}
.page-archive .page-mast{background-image:url('/assets/tropical-rock-pool-optimized-1536.webp?v=clean-20261102')}
.page-about .page-mast{background-image:url('/assets/tropical-still-water-optimized-1536.webp?v=clean-20261102')}
.page-letters .page-mast,.page-writing .page-mast{background-image:url('/assets/tropical-sunset-optimized-1536.webp?v=clean-20261102')}
.page-contact .contact-page{background-image:url('/assets/sea-clouds-3840.webp')}

/* Native-source crop supplies enough vertical detail on tall phone screens. */
@media(max-width:600px){:root{--ladder-brand-image:url('/assets/beach-hero-1536.webp')}}
