@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400;1,500&family=Manrope:wght@400;500;600;700&display=swap');
:root{--paper:#f5f2ec;--ink:#292923;--muted:#77776e;--accent:#733f47;--line:#d8d4cb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}header{margin:0 4.8%;height:105px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:36px;letter-spacing:-2px;font-family:Georgia,serif}.brand span{font-family:Manrope,Arial,sans-serif;letter-spacing:1px;font-size:11px;margin-left:10px}nav{display:flex;gap:32px;font-size:12px}.top-contact{font-size:12px;border-bottom:1px solid;padding-bottom:6px}.hero{position:relative;display:grid;grid-template-columns:1.1fr 1fr;margin:58px 8% 115px 9%;gap:6%;align-items:center}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;line-height:1.7}.dot{display:inline-block;width:7px;height:7px;background:var(--accent);border-radius:50%;margin-right:10px}h1,h2,.manifesto>p:not(.eyebrow){font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;letter-spacing:-2px;line-height:.98}h1{font-size:clamp(70px,7.8vw,126px);margin:36px 0 34px}i{font-weight:400;color:var(--accent)}figure{margin:0}.hero-photo{position:relative;max-width:520px;width:100%}.hero-photo img{width:100%;height:580px;object-fit:cover;display:block}.hero-photo figcaption{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.3px;margin-top:13px}.hero-bottom{display:flex;align-items:center;justify-content:space-between;max-width:365px}.hero-bottom p{color:var(--muted);font-size:13px;line-height:1.8}.round{border:1px solid var(--line);border-radius:50%;width:52px;height:52px;display:grid;place-items:center;font-size:22px}.hero-note{position:absolute;right:-5%;top:44%;writing-mode:vertical-rl;font-size:10px;letter-spacing:2px;color:var(--muted)}.portfolio,.session{margin:0 9%}.section-top{display:grid;grid-template-columns:1fr 2fr;gap:20px;align-items:start;margin-bottom:55px}.section-top h2{font-size:62px;margin:0}.section-top .aside{grid-column:2;font-size:12px;color:var(--muted);line-height:1.8;margin:-3px 0 0}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:65px 7%;align-items:start}.photo{display:block;padding:0;background:none;border:0;text-align:left;min-width:0}.photo img{width:100%;height:500px;object-fit:cover;display:block;transition:filter .3s}.photo:hover img{filter:brightness(.93)}.photo span{display:block;margin-top:14px;font-size:10px;letter-spacing:.6px}.photo.offset{margin-top:115px}.photo.wide img{height:390px}.photo:nth-child(4){margin-top:30px}.photo:nth-child(5){margin-top:0}.photo:nth-child(6){margin-top:90px}.text-link{display:inline-block;font-size:12px;border-bottom:1px solid var(--ink);padding-bottom:8px;margin-top:45px}.manifesto{position:relative;text-align:center;padding:110px 5%;margin:90px 0;background:#e9e5dc}.manifesto>p:not(.eyebrow){font-size:clamp(44px,5.3vw,80px);margin:35px 0 0;line-height:1.07}.asterisk{position:absolute;bottom:34px;right:9%;font-size:50px;color:var(--accent)}.session-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:12%;padding:16px 0 90px}.amount{font-family:'Cormorant Garamond',Georgia,serif;font-size:150px;line-height:1;margin:20px 0 0}.amount span{font-size:70px;vertical-align:top;padding-left:8px}.price-note{color:var(--muted);margin:8px 0 35px}.pill{display:inline-flex;background:var(--ink);color:var(--paper);padding:18px 22px;font-size:11px;gap:32px;border-radius:2px;align-items:center}.pill:hover{background:var(--accent)}.pill span{font-size:18px}.details>div{border-top:1px solid var(--line);padding:22px 0 23px 40px;position:relative}.details>div>span{position:absolute;left:0;top:25px;font-size:10px;color:var(--muted)}h3{font-size:15px;font-weight:500;margin:0 0 10px}.details p{font-size:12px;line-height:1.8;color:var(--muted);margin:0;max-width:340px}details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-size:11px;list-style:none;display:flex;justify-content:space-between}summary::-webkit-details-marker{display:none}details p{padding-top:14px}.about{display:grid;grid-template-columns:1fr 1fr;gap:13%;padding:90px 9%;border-top:1px solid var(--line);align-items:center}.about figure img{display:block;width:100%;height:500px;object-fit:cover}.about figcaption{font-size:8px;letter-spacing:1.5px;margin-top:14px}.about h2{font-size:70px;margin:30px 0}.about-text{line-height:1.9;font-size:13px;max-width:340px;color:var(--muted)}.about .text-link{margin-top:20px}.dates{background:#e9e5dc;padding:90px 9%;display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center}.dates h2{font-size:56px;line-height:1.1;margin:28px 0 35px}.availability{font-size:13px}.dates-copy{font-size:12px;color:#626259;line-height:1.9;margin:18px 0 28px}.calendar{background:var(--paper);padding:28px;max-width:400px;width:100%}.calendar-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.calendar-nav h3{margin:0;text-transform:capitalize;font-size:14px}.calendar-nav button{border:0;background:none;padding:10px}.week,.days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.week{font-size:8px;letter-spacing:1px;color:var(--muted);margin-bottom:12px}.days span{height:39px;display:grid;place-items:center;font-size:11px;color:#9b9991}.days .today{border:1px solid var(--accent);border-radius:50%;color:var(--accent)}.calendar-caption{border-top:1px solid var(--line);padding-top:18px;font-size:9px;color:var(--muted);margin:16px 0 0}.calendar-caption span{display:inline-block;background:#b0ada5;height:5px;width:5px;border-radius:50%;margin-right:7px}footer{padding:55px 9% 25px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:30px}footer p{font-size:10px;color:var(--muted)}.footer-links{display:flex;gap:26px;align-items:center;font-size:10px}.copyright{flex-basis:100%;border-top:1px solid var(--line);padding-top:22px;margin-top:20px}dialog{border:0;background:#171715;color:white;padding:50px;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;position:fixed;inset:0}dialog[open]{display:grid;grid-template-columns:45px 1fr 45px;place-items:center}dialog::backdrop{background:#171715}dialog img{max-height:80dvh;max-width:100%;object-fit:contain;grid-column:2;grid-row:1}dialog button{border:0;color:white;background:transparent;font-size:25px;padding:12px}#close{position:absolute;right:20px;top:14px}#photo-prev{grid-column:1;grid-row:1}#photo-next{grid-column:3;grid-row:1}#photo-caption{grid-column:2;font-size:11px;letter-spacing:1px}body.modal-open{overflow:hidden}
@media(min-width:1500px){main,header,footer{max-width:1600px;margin-left:auto;margin-right:auto}}@media(max-width:800px){header{height:80px;margin:0 6%}nav{gap:16px;font-size:10px}.top-contact{display:none}.hero{margin:35px 6% 65px;gap:5%}.hero-photo img{height:450px}h1{font-size:65px;letter-spacing:-2px}.hero-note{display:none}.hero-photo figcaption{font-size:6px}.hero-bottom{gap:8px}.hero-bottom p{font-size:10px}.round{width:40px;height:40px;flex-shrink:0}.portfolio,.session{margin:0 6%}.section-top{grid-template-columns:1fr 2fr}.section-top h2{font-size:48px}.photo img{height:380px}.photo.wide img{height:310px}.gallery{gap:40px 6%}.about{gap:8%;padding:65px 6%}.about h2{font-size:54px}.about figure img{height:420px}.dates{padding:65px 6%;gap:5%}.dates h2{font-size:44px}.calendar{padding:20px}.session-grid{gap:8%}.footer-links{flex-wrap:wrap;gap:15px}}
@media(max-width:540px){.hero{display:flex;flex-direction:column;align-items:stretch;gap:30px}.hero-copy{position:relative}h1{font-size:78px;margin:25px 0}.hero-bottom{max-width:none}.hero-photo{max-width:none}.hero-photo img{height:490px;object-position:center 40%}.hero-photo figcaption{font-size:8px}.hero-bottom p{font-size:12px}.section-top{display:block;margin-bottom:30px}.section-top .eyebrow{margin-bottom:24px}.section-top h2{font-size:49px}.section-top .aside{margin-top:22px}.gallery{gap:30px 5%}.photo img{height:265px}.photo.offset{margin-top:65px}.photo.wide img{height:240px}.photo:nth-child(4){margin-top:25px}.photo:nth-child(6){margin-top:60px}.photo span{font-size:8px;line-height:1.6}.manifesto{margin:60px 0;padding:70px 5% 90px}.manifesto>p:not(.eyebrow){font-size:43px;letter-spacing:-1px}.asterisk{font-size:30px;bottom:20px}.session-grid{display:block;padding-bottom:55px}.amount{font-size:125px}.price{margin-bottom:45px}.pill{padding:16px 22px}.about{display:flex;flex-direction:column-reverse;gap:40px;padding:55px 6%}.about h2{font-size:64px}.about figure{width:100%}.about figure img{height:470px}.dates{display:block;padding:55px 6%}.dates h2{font-size:45px}.calendar{margin:38px 0 0;max-width:none;padding:25px}.days span{height:43px}.footer-links{flex-direction:column;align-items:flex-start}footer{padding:40px 6% 15px}dialog{padding:50px 8px 25px;grid-template-columns:32px 1fr 32px!important}dialog button{padding:6px}dialog img{max-height:76dvh}.about-text{max-width:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.portfolio-label{font-size:10px;letter-spacing:2px;margin:0 0 24px}.family-series{margin-top:100px;scroll-margin-top:35px}.family-heading{margin-bottom:38px}.family-heading h2{font-size:62px;margin:24px 0 0}.family-gallery{display:grid;grid-template-columns:1fr 1fr;gap:42px 7%;align-items:start}.family-gallery .family-photo{margin:0}.family-gallery .family-photo img{height:auto;width:100%;object-fit:contain}.family-2938{grid-column:1/-1}.family-3919{grid-column:1/-1;width:60%;justify-self:center}@media(max-width:540px){.family-series{margin-top:65px}.family-heading h2{font-size:49px}.family-gallery{gap:28px 5%}.family-3919{width:76%}}

.gallery .new-portrait{margin-top:0}.gallery .new-portrait img{height:auto;object-fit:contain}.gallery .new-portrait:last-child{width:70%;grid-column:1/-1;justify-self:center}

.city-story{margin-top:75px;scroll-margin-top:35px}.city-wide{grid-column:1/-1}.city-story .family-heading h2{line-height:1.04}.city-story .family-heading{max-width:850px}@media(max-width:540px){.city-story{margin-top:55px}.city-story .family-heading h2{font-size:43px}}

.portrait-story{margin-top:80px;scroll-margin-top:35px}.series-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px 7%;align-items:start}.series-grid .photo img{width:100%;height:auto;object-fit:contain}#sea-portraits .photo:last-child{grid-column:1/-1;width:60%;justify-self:center}@media(max-width:540px){.portrait-story{margin-top:55px}.series-grid{gap:28px 5%}.portrait-story h2{font-size:46px}#sea-portraits .photo:last-child{width:76%}}

.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 7%;align-items:start}.story-card{padding:0;border:0;background:none;text-align:left;min-width:0;scroll-margin-top:35px}.story-image{position:relative;overflow:hidden}.story-image img{width:100%;height:auto;display:block;transition:transform .4s}.story-card:hover img{transform:scale(1.025)}.story-open{position:absolute;bottom:18px;right:18px;border-radius:2px;background:var(--paper);padding:11px 15px;font-size:10px}.story-meta{display:flex;justify-content:space-between;gap:15px;margin-top:18px;align-items:baseline}.story-meta h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:29px;margin:0 0 7px}.story-meta p{font-size:10px;color:var(--muted);margin:0}.story-meta>span{font-size:10px;white-space:nowrap}.landscape-story{grid-column:1/-1}.landscape-story .story-image img{max-height:640px;object-fit:contain}.hero-photo img{object-position:center}.story-card:nth-child(2){margin-top:85px}.story-card:nth-child(5){margin-top:75px}@media(max-width:540px){.story-grid{gap:35px}.story-meta{display:block}.story-meta h3{font-size:24px}.story-meta>span{display:block;margin-top:10px}.story-open{bottom:10px;right:10px;font-size:8px;padding:8px}.story-card:nth-child(2){margin-top:45px}.story-card:nth-child(5){margin-top:35px}.story-meta p{font-size:9px}}@media(prefers-reduced-motion:reduce){.story-image img{transition:none}}
/* Language, appearance, services and weekend requests */
:root{--surface:#e9e5dc;--card:#f5f2ec;--button-text:#f5f2ec}html[data-theme="dark"]{--paper:#241b17;--ink:#eee4d5;--muted:#bdad9c;--accent:#d7ad8d;--line:#514035;--surface:#30241e;--card:#382a22;--button-text:#241b17;color-scheme:dark}body{transition:background-color .35s,color .35s}.brand{font-size:28px;letter-spacing:-1px;white-space:nowrap}.brand .surname{font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;letter-spacing:-.7px;margin-left:3px}.header-controls{display:flex;gap:18px;align-items:center}.languages{display:flex;gap:4px}.languages button,.theme-toggle{border:1px solid transparent;background:transparent;color:var(--muted);font-size:10px;padding:8px;white-space:nowrap}.languages button.active{border-color:var(--line);color:var(--ink)}.theme-toggle{border-color:var(--line);min-width:78px;color:var(--ink)}header nav{gap:24px}.hero h1{font-size:clamp(58px,6.6vw,104px);line-height:1.02}.hero .eyebrow{max-width:350px;line-height:1.9}.hero-bottom{max-width:400px}.manifesto,.dates{background:var(--surface)}.calendar{background:var(--card);max-width:430px}.pill{color:var(--button-text)}.pill:hover{color:var(--paper)}.story-open{background:var(--paper);color:var(--ink)}.rate{border-top:1px solid var(--line);padding:25px 0}.rate h3{font-size:17px}.rate-value{font-family:'Cormorant Garamond',Georgia,serif;font-size:67px;line-height:1;margin:18px 0}.rate-value span{font-family:Manrope,Arial,sans-serif;font-size:12px;color:var(--muted)}.rate-desc{font-size:12px;line-height:1.9;color:var(--muted);max-width:350px}.price-options .pill{margin-top:20px}.days .calendar-day{position:relative;min-height:43px;padding:0;border:1px solid transparent;background:transparent;display:grid;place-items:center;font-size:11px;color:var(--ink)}.days .calendar-day span{height:auto;color:inherit;font-size:inherit}.calendar-day.unavailable-day{color:var(--muted);cursor:default;opacity:.5}.calendar-day i{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:22px;font-style:normal;opacity:.65}.calendar-day.available-day{border-color:var(--line);background:var(--surface);margin:2px}.calendar-day.available-day:hover,.calendar-day.selected-day{background:var(--accent);color:var(--paper)}.days .calendar-day.today{border:1px solid var(--accent);border-radius:0}.slot-picker{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.slot-picker[hidden],#booking-request[hidden]{display:none}.slot-picker>p:first-child{text-transform:capitalize;font-size:12px;line-height:1.7}.slots{display:flex;gap:10px;margin:15px 0 22px}.slots button{flex:1;border:1px solid var(--line);padding:13px;background:transparent}.slots button.active{background:var(--ink);color:var(--paper)}.slots button:disabled{opacity:.3;text-decoration:line-through;cursor:default}.service-label{display:block;font-size:10px;margin-bottom:9px}#booking-service{width:100%;background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:12px;font:inherit;font-size:12px}#booking-selection{font-size:11px;line-height:1.7}.request-note{font-size:10px;line-height:1.8;color:var(--muted)}.calendar-caption{line-height:1.7}.dates-copy,.details p{color:var(--muted)}.dates h2{font-size:52px}.manifesto>p:not(.eyebrow){font-size:clamp(38px,4.8vw,70px);line-height:1.1}.story-grid{row-gap:42px}.hero-photo img{height:580px}footer .brand{display:block;margin-bottom:15px}html[data-theme="dark"] dialog{background:#160f0c}html[data-theme="dark"] .pill:hover{background:#dfbea3;color:#241b17}@media(max-width:1000px){header{flex-wrap:wrap;height:auto;min-height:110px;padding:18px 0;gap:18px}header nav{order:3;flex-basis:100%;justify-content:center}.hero h1{font-size:66px}.brand,.brand .surname{font-size:27px}.header-controls{gap:8px}.hero-photo img{height:470px}}@media(max-width:540px){header{min-height:105px;gap:15px}.brand,.brand .surname{font-size:25px}.languages button{padding:7px 5px;font-size:9px}.theme-toggle{padding:7px 5px;min-width:62px;font-size:9px}.header-controls{gap:5px}.hero h1{font-size:60px}.hero .eyebrow{font-size:9px}.hero-photo img{height:auto}.dates h2{font-size:43px}.rate-value{font-size:62px}.story-grid{gap:30px 5%}.days .calendar-day{min-height:39px}.calendar{padding:20px}.calendar-day i{font-size:20px}.availability{font-size:12px;line-height:1.8}.session-grid{gap:8%}}@media(prefers-reduced-motion:reduce){body{transition:none}}
/* Warm yellow accents and tactile controls */
:root{--yellow:#f1c84b;--gold-ink:#8b670d;--control:#ece6da;--control-shadow:0 4px 9px #51432b14,inset 0 1px 0 #ffffffc9}html[data-theme="dark"]{--yellow:#f1c84b;--gold-ink:#f1c84b;--control:#3b2c23;--control-shadow:0 5px 12px #0005,inset 0 1px 0 #ffffff12}.brand,.brand .surname{color:var(--gold-ink)}.languages{background:var(--control);border:1px solid var(--line);border-radius:30px;padding:4px;gap:2px;box-shadow:var(--control-shadow)}.languages button{border:0;border-radius:22px;padding:9px 12px;color:var(--muted);transition:background .2s,box-shadow .2s,transform .2s}.languages button.active{background:var(--yellow);color:#342715;box-shadow:0 2px 5px #71541430,inset 0 1px 0 #fff8}.languages button:hover{color:var(--ink);transform:translateY(-1px)}.languages button.active:hover{color:#342715}.theme-toggle{border-radius:28px;padding:13px 16px;border:1px solid var(--line);background:var(--control);box-shadow:var(--control-shadow);transition:transform .2s,box-shadow .2s}.theme-toggle:hover{transform:translateY(-2px);box-shadow:0 7px 14px #0002}.theme-toggle:active,.languages button:active{transform:translateY(1px)}.header-controls{gap:12px}.pill{border-radius:30px;background:var(--yellow);color:#302517;box-shadow:0 4px 10px #89691a1a,inset 0 1px 0 #fff7}.pill:hover,html[data-theme="dark"] .pill:hover{background:#ffdb68;color:#302517;transform:translateY(-1px)}.round{background:var(--yellow);color:#302517;border-color:transparent;box-shadow:var(--control-shadow)}.asterisk{color:var(--gold-ink)}.story-open{border-radius:22px;padding:12px 18px;box-shadow:0 3px 12px #0002}.calendar-nav button{border-radius:50%;width:36px;height:36px;background:var(--control);box-shadow:var(--control-shadow)}.calendar-nav button:disabled{opacity:.35;cursor:default}.calendar{border-radius:18px}.calendar-day.available-day{border-radius:9px}.calendar-day.selected-day{background:var(--yellow)!important;color:#302517!important}.days .calendar-day.today{border-radius:9px}.slots button{border-radius:20px;background:var(--control);box-shadow:var(--control-shadow)}.slots button.active{background:var(--yellow);color:#302517;border-color:var(--yellow)}#booking-service,#booking-duration{width:100%;background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:12px 15px;font:inherit;font-size:12px;border-radius:12px}.duration-label{margin-top:18px}#booking-selection{font-size:13px;font-weight:600;padding:12px 0}.calendar-day.unavailable-day{opacity:.7}.calendar-day i{opacity:.5}@media(max-width:1000px){.languages button{padding:8px 10px}.theme-toggle{padding:12px 14px}.header-controls{gap:8px}}@media(max-width:540px){.languages{padding:3px}.languages button{padding:8px 7px;font-size:9px}.theme-toggle{padding:12px 9px;min-width:64px;font-size:9px}.header-controls{gap:7px}.brand,.brand .surname{font-size:23px}header{row-gap:13px}.pill{font-size:10px;padding:15px 20px}.calendar{padding:20px}}
.about{align-items:start}.about figure{position:sticky;top:35px}.about figure img{height:auto}.about .about-text{font-size:13px;line-height:1.9;margin-top:22px}.about h2{font-size:clamp(45px,5vw,70px)}@media(max-width:540px){.about figure{position:static}.about .about-text{font-size:13px}.about h2{font-size:53px}}

.business-status{flex-basis:100%;font-size:10px;color:var(--muted);margin:0}.copyright{margin-top:0}
.away-notice{font-size:11px;line-height:1.7;color:var(--accent);padding:12px 0;margin:10px 0 0;border-top:1px solid var(--line)}.days .calendar-day.away-day{background:var(--surface);opacity:1;color:var(--muted);text-decoration:line-through}.calendar-day.away-day i{color:var(--accent);opacity:.8}.dates-copy{max-width:420px}
/* Readable layouts and touch targets for phones and tablets. */
img{max-width:100%}button,a,input,select,summary{touch-action:manipulation}main,section,header,footer{min-width:0}.hero-copy,.about>div,.dates>div{min-width:0}.hero h1,.section-top h2,.about h2,.dates h2{overflow-wrap:anywhere}.hero h1{hyphens:none}.languages button,.theme-toggle,.calendar-nav button,.slots button{min-height:44px}.calendar-nav button{min-width:44px}.calendar-nav{gap:10px}.calendar-nav h3{text-align:center;line-height:1.5}.days .calendar-day{min-height:44px}.calendar-day i{font-size:21px}.calendar{max-width:460px}.process{margin:0 9%;padding:20px 0 85px;border-top:1px solid var(--line)}.process h2{font-size:54px;margin:28px 0 35px}.process-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.process-steps article{border-top:1px solid var(--line);padding-top:20px}.process-steps article>span{font-size:11px;color:var(--gold-ink)}.process-steps h3{font-size:17px;margin:17px 0 12px}.process-steps p{font-size:14px;color:var(--muted);line-height:1.85;margin:0}.about .about-text,.details p,.dates-copy{font-size:15px;line-height:1.85}.availability{line-height:1.8}.footer-links a{display:inline-flex;align-items:center;min-height:44px}.business-status{line-height:1.8}.story-open{min-height:44px;display:flex;align-items:center}#booking-request{line-height:1.6;white-space:normal}.rate-desc{font-size:14px}.service-label{font-size:12px}#booking-service,#booking-duration{min-height:48px;font-size:16px}.request-note,.calendar-caption,.away-notice{font-size:12px;line-height:1.8}.about .about-text{max-width:560px}.dates-copy{max-width:480px}.hero-bottom p{font-size:14px}
@media(min-width:601px) and (max-width:1000px){.hero{margin:45px 6% 80px;grid-template-columns:1fr 1fr;gap:6%}.hero h1{font-size:clamp(52px,7.8vw,72px)}.hero-photo img{height:auto}.portfolio,.session,.process{margin-left:6%;margin-right:6%}.section-top h2{font-size:50px}.process-steps{gap:24px}.story-grid{gap:48px 7%}.story-card:nth-child(2){margin-top:55px}}
@media(max-width:900px){.dates{display:flex;flex-direction:column;align-items:stretch;gap:36px;padding:65px 8%}.dates>div:first-child{max-width:600px}.calendar{width:100%;align-self:center;padding:28px}.about{display:grid;grid-template-columns:1fr;gap:40px;padding:65px 8%}.about figure{position:relative;top:auto;max-width:430px;width:100%;justify-self:center}.about>div{max-width:620px;justify-self:center}.about h2{font-size:58px}.about .about-text{max-width:none}.process-steps{grid-template-columns:1fr}.process{padding-bottom:60px}.process h2{font-size:48px}}
@media(max-width:600px){header{margin:0 6%;padding:20px 0;display:grid;grid-template-columns:1fr;gap:17px}.brand,.brand .surname{font-size:30px}.header-controls{justify-content:space-between;width:100%;gap:12px}header nav{display:flex;justify-content:space-between;gap:12px;font-size:13px;order:initial}.languages{flex:1;justify-content:space-around;max-width:230px}.languages button{flex:1;font-size:11px;padding:10px}.theme-toggle{font-size:12px;padding:10px 18px;min-width:93px}.hero{display:flex;flex-direction:column;gap:35px;margin:35px 6% 65px}.hero h1{font-size:clamp(45px,12.5vw,67px);letter-spacing:-1.7px;line-height:1.05;margin:25px 0}.hero .eyebrow{font-size:10px;letter-spacing:1.5px}.hero-bottom p{font-size:14px;line-height:1.8}.hero-photo{width:100%}.hero-photo img{height:auto}.section-top{display:block}.section-top h2{font-size:46px;letter-spacing:-1.4px}.section-top .aside{font-size:14px;margin-top:22px}.story-grid{display:grid;grid-template-columns:1fr;gap:50px}.story-card:nth-child(2),.story-card:nth-child(5){margin-top:0}.landscape-story{grid-column:auto}.story-open{font-size:12px;padding:12px 18px;right:14px;bottom:14px}.portfolio,.session,.process{margin-left:6%;margin-right:6%}.manifesto{padding:65px 6%;margin:65px 0}.manifesto>p:not(.eyebrow){font-size:36px;letter-spacing:-1px;line-height:1.15}.manifesto .eyebrow{font-size:10px}.asterisk{position:static;display:block;font-size:30px;margin-top:25px}.session-grid{display:block;padding-bottom:55px}.price-options{margin-bottom:45px}.rate h3{font-size:20px}.rate-value{font-size:70px}.rate-value span{font-size:14px}.rate-desc{font-size:15px}.details p{font-size:15px}.details h3{font-size:17px}.details summary{font-size:14px;line-height:1.8;min-height:44px;align-items:center}.pill{font-size:13px;padding:16px 22px;min-height:48px}.about{padding:55px 6%;gap:38px}.about h2{font-size:46px;letter-spacing:-1.5px}.about figure{max-width:360px}.dates{padding:55px 6%;gap:30px}.dates h2{font-size:43px;letter-spacing:-1.4px}.availability{font-size:14px}.calendar{padding:20px;max-width:430px;margin:0}.calendar-nav h3{font-size:15px}.week{font-size:10px;letter-spacing:0}.days .calendar-day{font-size:13px;min-height:44px;margin:0}.days{gap:1px}.slots button{font-size:15px;min-height:48px}.text-link{font-size:14px;line-height:1.7}.eyebrow{font-size:10px;letter-spacing:1.6px}.process{padding-top:20px}.process h2{font-size:42px}.process-steps{gap:28px}.process-steps p{font-size:15px}footer{padding:35px 6% 20px;display:block}.footer-links{margin-top:20px;display:flex;flex-direction:column;align-items:flex-start;gap:0;font-size:14px}.business-status{font-size:12px;margin-top:20px}.copyright{font-size:11px;margin-top:20px}.footer-links a{overflow-wrap:anywhere}dialog{padding:55px 6px 20px;grid-template-columns:38px minmax(0,1fr) 38px!important}dialog img{max-height:75dvh;width:auto;max-width:100%}dialog button{min-width:38px;min-height:48px}#close{right:10px;top:8px}#photo-caption{font-size:13px}}
@media(max-width:360px){.calendar{padding:14px}.days .calendar-day{min-height:40px}.theme-toggle{min-width:83px;padding-left:12px;padding-right:12px}.languages button{padding:8px}.hero h1{font-size:44px}}

/* Editorial controls: quiet surfaces, clear hierarchy, generous touch targets. */
:root{--accent:#886b32;--control-shadow:none}html[data-theme="dark"]{--accent:#e7c879;--control-shadow:none}
.languages{background:transparent;border:0;padding:0;box-shadow:none;gap:2px;border-radius:0}
.languages button{position:relative;min-width:38px;min-height:44px;padding:10px 8px;background:transparent;border-radius:0;box-shadow:none;font-size:11px}
.languages button.active,.languages button.active:hover{background:transparent;color:var(--ink);box-shadow:none}
.languages button.active::after{content:"";position:absolute;bottom:3px;left:30%;right:30%;height:2px;background:var(--gold-ink)}
.languages button:hover,.languages button:active{transform:none}
.theme-toggle{display:grid;place-items:center;flex:none;min-width:44px;width:44px;height:44px;padding:0;font-size:22px;line-height:1;border:1px solid var(--line);background:transparent;border-radius:50%;box-shadow:none}
.theme-toggle:hover,.theme-toggle:active{transform:none;box-shadow:none;background:var(--surface)}
.pill,.secondary-action{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:52px;padding:15px 23px;border-radius:10px;font-size:13px;font-weight:500;line-height:1.5;box-shadow:none;transition:background .2s,color .2s}
.pill{background:var(--yellow);color:#302517;border:1px solid transparent}.pill:hover,html[data-theme="dark"] .pill:hover{transform:none;background:#ffdb68}
.secondary-action{border:1px solid var(--line);background:transparent;color:var(--ink)}.secondary-action:hover{background:var(--surface)}
.contact-actions{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 0}.date-link{margin-top:20px}.round{box-shadow:none}
.story-image{overflow:hidden;border-radius:3px}.story-open{border-radius:50%;width:48px;height:48px;padding:0;background:var(--paper);font-size:0;box-shadow:none;display:grid;place-items:center}.story-open::after{content:'↗';font-size:23px}.story-card:hover img{transform:scale(1.02)}
.calendar{border:1px solid var(--line);border-radius:14px}.calendar-nav button{box-shadow:none;background:transparent;border:1px solid var(--line)}.slots button{border-radius:8px;box-shadow:none;background:transparent}.slots button.active{background:var(--yellow)}
#booking-service,#booking-duration{border-radius:8px}.calendar-day.available-day{border-radius:6px}
.instagram-section{padding:80px 9%;border-top:1px solid var(--line)}.instagram-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:35px}.instagram-heading h2{font-size:62px;margin:24px 0 0}.instagram-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.instagram-strip a{position:relative;overflow:hidden;border-radius:3px}.instagram-strip img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;transition:transform .4s}.instagram-strip a:hover img{transform:scale(1.03)}.instagram-strip span{position:absolute;right:12px;bottom:12px;background:var(--paper);width:36px;height:36px;display:grid;place-items:center;border-radius:50%;font-size:20px}.instagram-note{color:var(--muted);font-size:12px;line-height:1.8;margin-top:22px}
@media(max-width:600px){header{grid-template-columns:minmax(0,1fr) auto;gap:16px 8px;padding:18px 0}.brand,.brand .surname{font-size:25px}.header-controls{grid-column:2;grid-row:1;width:auto;gap:6px}.languages{flex:none;max-width:none}.languages button{min-width:31px;padding:8px 4px;font-size:10px;flex:none}.theme-toggle{min-width:40px;width:40px;height:44px;padding:0;font-size:21px}header nav{grid-column:1/-1;grid-row:2;justify-content:flex-start;gap:26px;font-size:12px}.hero{margin-top:30px}.hero-photo img{max-height:560px;object-fit:cover}.contact-actions{display:grid;grid-template-columns:1fr;width:100%;gap:10px}.contact-actions a{width:100%;min-height:54px;font-size:14px}.story-open{width:48px;height:48px;padding:0;font-size:0;right:12px;bottom:12px}.story-grid{gap:26px}.instagram-section{padding:55px 6%}.instagram-heading{display:block}.instagram-heading h2{font-size:46px}.instagram-heading .secondary-action{margin-top:24px}.instagram-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px}.instagram-strip a{flex:0 0 68%;scroll-snap-align:start}.instagram-note{font-size:13px}.hero-bottom .round{width:48px;height:48px}}
@media(max-width:360px){.brand,.brand .surname{font-size:22px}.header-controls{gap:3px}.languages button{min-width:29px}.theme-toggle{min-width:36px;width:36px}}

.archive-entry{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 0;margin-top:45px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:18px}.archive-entry>span:last-child{font-size:28px;color:var(--gold-ink)}
.archive-intro{margin:35px 9% 65px;max-width:950px}.archive-intro .text-link{margin:0 0 48px}.archive-intro h1{font-size:clamp(60px,8vw,110px);margin:26px 0}.archive-copy{max-width:470px;font-size:15px;line-height:1.9;color:var(--muted)}.archive-collection{margin:0 9% 90px}.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;align-items:start;margin-bottom:55px}.archive-grid .story-card:nth-child(2){margin-top:85px}.archive-grid .story-image img{width:100%;aspect-ratio:2/3;object-fit:cover}header nav{flex-wrap:wrap}
@media(max-width:600px){header nav{gap:17px}.archive-intro{margin:30px 6% 40px}.archive-intro h1{font-size:54px;letter-spacing:-1.5px}.archive-intro .text-link{margin-bottom:30px}.archive-collection{margin:0 6% 55px}.archive-grid{grid-template-columns:1fr;gap:28px}.archive-grid .story-card:nth-child(2){margin-top:0}.archive-entry{font-size:16px}}

.shooting-scope{border-left:2px solid var(--gold-ink);padding-left:18px;margin:28px 0;font-size:13px;line-height:1.9;color:var(--muted);max-width:440px}@media(max-width:600px){.shooting-scope{font-size:14px}}

.archive-grid{row-gap:44px}.archive-grid .story-card:nth-child(2){margin-top:0}.archive-grid .story-image img{aspect-ratio:auto;height:auto}.archive-grid .story-card{align-self:start}@media(max-width:600px){.archive-grid{gap:28px}}
