:root{--black:#080808;--ink:#121212;--paper:#eeeae3;--muted:#9a9995;--line:rgba(255,255,255,.17);--accent:#c9b08b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--paper);font-family:Inter,Arial,sans-serif;font-size:16px;font-weight:300}a{color:inherit;text-decoration:none}button{font:inherit}.site-header{position:absolute;z-index:5;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:28px 4vw;border-bottom:1px solid rgba(255,255,255,.2)}.brand{display:flex;flex-direction:column;font-family:Italiana,serif;font-size:24px;line-height:.68;letter-spacing:.04em}.brand span:last-child{margin-left:15px;color:var(--accent)}nav{display:flex;gap:34px;font-size:14px}nav a{opacity:.75}nav a:hover{opacity:1}.menu-button{display:none;background:none;border:0;color:white}.hero{position:relative;min-height:100svh;overflow:hidden;display:flex;align-items:center;padding:130px 8vw 70px}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.45) 43%,rgba(0,0,0,.05) 75%)}.hero-copy{position:relative;z-index:1;max-width:610px}.eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent)}h1,h2{font-family:Italiana,serif;font-weight:400;margin:0;line-height:.92}h1{font-size:clamp(70px,10vw,150px);letter-spacing:-.04em}.hero-copy>p:not(.eyebrow){max-width:510px;font-size:18px;line-height:1.7;color:#d2d0cc}.text-link{display:inline-flex;gap:28px;margin-top:26px;border-bottom:1px solid;padding:0 0 9px}.scroll-note{position:absolute;right:3vw;bottom:70px;z-index:1;writing-mode:vertical-rl;font-size:11px;letter-spacing:.2em;text-transform:uppercase}.section-pad{padding:130px 8vw}.section-number{font-size:12px;color:var(--accent);letter-spacing:.16em}.intro{display:grid;grid-template-columns:1fr 4fr 2fr;gap:50px;align-items:start;background:var(--paper);color:var(--ink)}.intro h2{font-size:clamp(48px,6.5vw,96px)}.kicker{margin-top:0;color:#686662}.intro-text,.about-copy{font-size:17px;line-height:1.75;color:#686662}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:65px}.section-heading h2{font-size:clamp(65px,10vw,140px)}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3vw}.photo{position:relative;padding:0;border:0;background:#111;overflow:hidden;cursor:zoom-in;min-height:580px}.photo-wide{grid-column:span 2;aspect-ratio:2/1;min-height:0}.photo-tall{min-height:820px}.photo img{width:100%;height:100%;display:block;object-fit:cover;filter:grayscale(1) contrast(1.06);transition:filter .6s,transform 1s}.photo:hover img{filter:grayscale(.15) contrast(1.03);transform:scale(1.015)}.shooting{background:var(--paper);color:var(--ink)}.light-heading .eyebrow{color:#776248}.shooting-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:10vw}.large-copy{font-family:Italiana,serif;font-size:clamp(34px,4vw,60px);line-height:1.08;margin:0}.steps article{display:grid;grid-template-columns:45px 1fr;border-top:1px solid #bbb7af;padding:25px 0}.steps span{color:#806d51;font-size:12px}.steps h3{margin:0;font-weight:400}.steps p{grid-column:2;line-height:1.6;color:#6c6963}.price-line{border-top:1px solid #aaa69f;margin-top:80px;padding-top:35px;display:flex;justify-content:space-between;align-items:end}.price-line>div{display:flex;flex-direction:column}.price{font-family:Italiana,serif;font-size:clamp(70px,9vw,125px);line-height:1}.price-line p{max-width:300px;text-align:right;line-height:1.6}.about{display:grid;grid-template-columns:.7fr 3fr 1.5fr;gap:55px}.about h2{font-size:clamp(50px,6vw,90px)}.about-copy{color:#aaa8a3}.contact{text-align:center;background:#111}.contact h2{font-size:clamp(65px,9vw,130px)}.contact>p:not(.eyebrow,.contact-note){max-width:500px;margin:30px auto;line-height:1.7;color:#aaa}.contact-button{border:1px solid #777;background:transparent;color:white;border-radius:50%;width:180px;height:180px;margin-top:30px;cursor:pointer;transition:.3s}.contact-button:hover{background:var(--paper);color:#111}.contact-button span{display:block;font-size:26px;margin-top:10px}.contact-note{color:var(--accent);margin-top:25px}footer{padding:55px 4vw;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#888}footer>div{display:flex;gap:25px}.footer-brand{color:var(--paper);font-size:20px}.legal{background:#111;border-top:1px solid var(--line);padding-top:70px;padding-bottom:70px}.legal h2{font-size:38px}.legal p{max-width:700px;color:#999;line-height:1.7}dialog{padding:0;border:0;background:transparent;max-width:92vw;max-height:92vh}dialog::backdrop{background:rgba(0,0,0,.94)}dialog img{max-width:90vw;max-height:90vh;display:block}dialog button{position:fixed;right:3vw;top:3vh;color:white;background:none;border:0;font-size:42px;cursor:pointer}
@media(max-width:800px){.site-header{padding:22px}.menu-button{display:block}nav{display:none;position:absolute;top:72px;left:0;right:0;padding:25px;background:#0b0b0b;flex-direction:column}nav.open{display:flex}.hero{padding-left:24px;padding-right:24px}.hero>img{object-position:63% center}.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.2))}.hero-copy>p:not(.eyebrow){max-width:85%}.section-pad{padding:85px 24px}.intro,.about{grid-template-columns:1fr}.intro{gap:18px}.section-heading{align-items:start;flex-direction:column}.gallery{grid-template-columns:1fr;gap:18px}.photo,.photo-tall{min-height:72vh}.photo-wide{grid-column:span 1;aspect-ratio:auto}.shooting-grid{grid-template-columns:1fr;gap:60px}.price-line{align-items:start;flex-direction:column}.price-line p{text-align:left}.about{gap:25px}footer{gap:25px;align-items:flex-start;flex-direction:column}.scroll-note{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo img{transition:none}}

/* Light gallery edition */
body{background:#d7d7d4;color:#181818}.portfolio{background:#d7d7d4;color:#181818}.portfolio .eyebrow{color:#5f5a52}.portfolio .section-number{color:#5f5a52}.gallery{max-width:1180px;margin:0 auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;align-items:start}.photo,.photo-wide,.photo-tall{grid-column:span 1;min-height:0;aspect-ratio:auto;padding:13px;background:#f7f7f5;border:1px solid #b9b9b5;box-shadow:0 12px 28px rgba(0,0,0,.1);overflow:visible}.photo img{width:100%;height:auto;max-height:560px;object-fit:contain;background:#ececea}.photo:hover img{transform:none;filter:grayscale(.15) contrast(1.03)}.about{background:#c9c9c6;color:#181818}.about-copy{color:#52524f}footer{background:#d7d7d4;color:#454542}.footer-brand{color:#181818}
@media(max-width:1050px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px}}
@media(max-width:800px){.gallery{grid-template-columns:1fr;gap:28px;max-width:500px}.photo,.photo-wide,.photo-tall{min-height:0;padding:10px}.photo img{height:auto;max-height:560px}.portfolio .section-heading{margin-bottom:40px}}

/* Layered portfolio cover */
.site-header{color:#181818;border-bottom-color:rgba(0,0,0,.16)}.hero{min-height:850px;background:#d7d7d4;color:#181818;isolation:isolate}.hero-copy{width:46%;max-width:650px}.hero-copy>p:not(.eyebrow){color:#4f4f4c}.hero .text-link{color:#181818}.hero-collage{position:absolute;z-index:-1;inset:105px 3vw 55px 42%;overflow:hidden}.collage-photo{position:absolute;margin:0;padding:9px;background:rgba(255,255,255,.62);border:1px solid rgba(70,70,70,.24);box-shadow:0 18px 40px rgba(0,0,0,.12);overflow:hidden}.collage-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);opacity:.62}.collage-one{width:49%;height:58%;left:4%;top:5%;transform:rotate(-4deg)}.collage-two{width:43%;height:67%;right:2%;top:3%;transform:rotate(5deg)}.collage-three{width:48%;height:48%;left:12%;bottom:2%;transform:rotate(3deg)}.collage-four{width:40%;height:52%;right:7%;bottom:0;transform:rotate(-5deg)}.hero .scroll-note{color:#484845}
@media(max-width:800px){.site-header{color:#181818}.menu-button{color:#181818}.hero{min-height:830px;padding-top:120px;align-items:flex-start}.hero-copy{width:100%}.hero-copy>p:not(.eyebrow){max-width:76%}.hero-collage{inset:345px -8vw 28px 5vw;opacity:.88}.collage-one{width:57%;height:52%;left:0}.collage-two{width:53%;height:58%;right:0}.collage-three{width:55%;height:44%;left:5%;bottom:0}.collage-four{width:49%;height:46%;right:2%;bottom:0}}
.hero-collage{z-index:0}
@media(max-width:800px){nav.open{color:#f5f5f2}}

/* Light contact section */
.contact{background:#c9c9c6;color:#111}.contact h2{color:#111}.contact>p:not(.eyebrow,.contact-note){color:#454542}.contact .eyebrow{color:#68583f}.contact-button{display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;min-width:250px;margin-top:30px;padding:18px 22px;border:1px solid #252525;border-radius:0;color:#111;font-size:13px;font-weight:400;letter-spacing:.12em;text-transform:uppercase}.contact-button:hover{background:#111;color:#f5f5f2}.contact-note{color:#574a36;margin-top:22px}.contact-note a{border-bottom:1px solid currentColor}
.social-links{display:flex;justify-content:center;gap:14px;margin:34px auto 8px}.social-link{display:grid;place-items:center;width:48px;height:48px;border:1px solid #444;border-radius:50%;color:#111;transition:background .25s,color .25s,transform .25s}.social-link:hover{background:#111;color:#f5f5f2;transform:translateY(-2px)}.social-link svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.social-link svg path{fill:currentColor;stroke:none}.social-link svg .fill-dot{fill:currentColor;stroke:none}.social-link.is-pending{opacity:.42;cursor:not-allowed}.threads-icon span{font-family:Arial,sans-serif;font-size:27px;font-weight:500;line-height:1}.footer-links{display:flex;gap:20px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:800px){.social-link{width:46px;height:46px}.footer-links{justify-content:flex-start}}

/* Locally available fonts and legal pages */
body{font-family:Arial,Helvetica,sans-serif}.brand,h1,h2,.large-copy,.price{font-family:Georgia,'Times New Roman',serif}
.legal-page{background:var(--paper);color:var(--ink);min-height:100vh}.legal-page .site-header{position:relative;background:#111;color:var(--paper)}.legal-page main{max-width:920px;margin:0 auto;padding:90px 32px 120px}.legal-page h1{font-size:clamp(54px,8vw,92px);margin-bottom:55px}.legal-page h2{font-size:30px;line-height:1.15;margin:48px 0 18px}.legal-page p,.legal-page li{font-size:16px;line-height:1.75;color:#4e4c48}.legal-page address{font-style:normal;line-height:1.75}.legal-page main a{border-bottom:1px solid #777}.legal-page footer{background:#111;color:#aaa}.legal-updated{font-size:13px!important;color:#777!important;margin-top:-35px;margin-bottom:50px}.legal-note{border-left:2px solid var(--accent);padding-left:20px}
@media(max-width:800px){.legal-page main{padding:65px 24px 90px}.legal-page .site-header nav{display:flex;position:static;padding:0;background:none;flex-direction:row}.legal-page .site-header nav a:not(:last-child){display:none}}

/* Photographer portrait */
.about{grid-template-columns:.35fr .72fr minmax(220px,310px) minmax(360px,1.6fr);align-items:start}.about-title{padding-top:8px}.about-meta{margin-top:18px;color:#74644e;font-size:12px;line-height:1.6;letter-spacing:.12em;text-transform:uppercase}.about-copy strong{display:block;margin-bottom:8px;color:#262624;font-size:19px;font-weight:500}.about-portrait{margin:0;padding:11px;background:#f7f7f5;border:1px solid #aaa9a5;box-shadow:0 12px 28px rgba(0,0,0,.1)}.about-portrait::after{display:none}.about-portrait img{width:100%;height:auto;display:block;aspect-ratio:4/5;object-fit:cover;object-position:center 30%;filter:grayscale(1) contrast(1.04);opacity:.72}
@media(max-width:1050px){.about{grid-template-columns:.35fr minmax(210px,290px) 1.5fr}.about-title{grid-column:2/4}.about-portrait{grid-column:2;min-height:0;margin-top:8px}.about-copy{grid-column:3}}
@media(max-width:800px){.about{grid-template-columns:1fr}.about-title,.about-portrait,.about-copy{grid-column:1}.about-portrait{width:min(78vw,320px);min-height:0;margin:12px 0 8px}.about-portrait img{opacity:.76}.about-copy{font-size:16px}}

/* Clear mobile hero flow: copy first, collage below */
@media(max-width:800px){.hero{display:block;min-height:0;padding:118px 24px 55px}.hero-copy{width:100%;max-width:none}.hero h1{font-size:clamp(54px,16vw,72px);line-height:.92}.hero-copy>p:not(.eyebrow){max-width:100%;font-size:17px;line-height:1.58}.hero .text-link{margin-top:18px}.hero-collage{position:relative;inset:auto;width:auto;height:600px;margin:42px -12px 0;opacity:.9}.collage-one{width:57%;height:50%;left:0;top:2%}.collage-two{width:53%;height:56%;right:0;top:4%}.collage-three{width:55%;height:43%;left:4%;bottom:0}.collage-four{width:49%;height:45%;right:1%;bottom:1%}}
@media(max-width:380px){.hero h1{font-size:52px}.hero-collage{height:540px}}

/* Model guide */
.models{background:#1b1b1a;color:#eeeae3}.models .section-heading{margin-bottom:55px}.models .section-heading h2{font-size:clamp(62px,9vw,128px)}.models-intro{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:8vw;align-items:end;margin-bottom:72px}.models-intro .large-copy{font-size:clamp(32px,3.5vw,52px)}.models-intro>p:last-child{max-width:360px;color:#b8b5af;font-size:17px;line-height:1.7}.models-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #5b5955;border-bottom:1px solid #5b5955}.model-card{padding:37px 35px 45px 0}.model-card+.model-card{border-left:1px solid #5b5955;padding-left:35px}.model-card-number,.models-note span{color:#c9b08b;font-size:12px;letter-spacing:.15em;text-transform:uppercase}.model-card h3{font-family:Georgia,'Times New Roman',serif;font-size:clamp(29px,2.7vw,42px);font-weight:400;line-height:1.12;min-height:95px;margin:30px 0}.model-card p,.model-card li{color:#c9c6bf;font-size:16px;line-height:1.65}.model-card p{margin:0 0 18px}.model-card ul{padding-left:1.1em;margin:0 0 18px}.model-card li{padding-left:.3em;margin-bottom:13px}.model-card li::marker{color:#c9b08b}.models-note{display:grid;grid-template-columns:140px minmax(0,720px);gap:25px;margin:45px 0 30px}.models-note span{padding-top:6px}.models-note p{margin:0;color:#c9c6bf;font-size:16px;line-height:1.7}.models-link{display:inline-flex;gap:35px;align-items:center;margin:28px 0 0 165px;padding-bottom:8px;border-bottom:1px solid #c9b08b;color:#eeeae3;font-size:16px}.models-link span{font-size:22px;color:#c9b08b}
@media(max-width:1050px){.models-grid{grid-template-columns:1fr 1fr}.model-card:nth-child(3){grid-column:1/-1;border-left:0;border-top:1px solid #5b5955;padding-left:0}.model-card h3{min-height:0}.models-intro{gap:5vw}}
@media(max-width:800px){.models .section-heading{margin-bottom:35px}.models-intro{grid-template-columns:1fr;gap:10px;margin-bottom:48px}.models-intro>p:last-child{max-width:650px}.models-grid{grid-template-columns:1fr}.model-card,.model-card+.model-card,.model-card:nth-child(3){grid-column:1;padding:30px 0;border-left:0;border-top:1px solid #5b5955}.model-card:first-child{border-top:0}.model-card h3{margin:22px 0}.models-note{grid-template-columns:1fr;gap:12px;margin-top:35px}.models-link{margin-left:0}}

/* Language selection */
.site-header{padding-right:calc(4vw + 115px)}.site-header nav{gap:20px}.home-language-switch{position:absolute;z-index:10;top:20px;right:4vw}@media(max-width:800px){.site-header{padding-right:140px}.home-language-switch{top:14px;right:18px}.site-header nav.open{gap:24px}}

.language-switch{display:inline-flex;align-items:center;gap:4px}.language-switch button,.language-switch a{color:inherit;background:transparent;border:0;border-bottom:2px solid transparent;min-width:42px;min-height:44px;padding:8px 6px;font-family:Arial,sans-serif;font-size:14px;letter-spacing:.08em;cursor:pointer;opacity:.55;text-align:center}.language-switch button[aria-pressed=true],.language-switch a[aria-current=page]{border-bottom-color:currentColor;font-weight:700;opacity:1}.legal-page .site-header{padding-right:4vw;gap:20px}.legal-page .site-header nav{margin-left:auto}.legal-page .site-header .language-switch a{display:inline-block}@media(max-width:800px){.legal-page .site-header{padding:22px 16px;flex-wrap:wrap}.legal-page .site-header nav{width:auto}.legal-page .site-header nav a{font-size:14px}}
