@font-face{font-family:Editorial;src:url('assets/fonts/editorial-serif.otf') format('opentype');font-weight:400;font-display:swap}@font-face{font-family:Editorial;src:url('assets/fonts/editorial-italic.otf') format('opentype');font-style:italic;font-display:swap}@font-face{font-family:Hand;src:url('assets/fonts/handwritten.otf') format('opentype');font-display:swap}
:root{--paper:#f2eddf;--ink:#343429;--muted:#655f50;--olive:#666648;--forest:#3e4434;--walnut:#524439;--clay:#a66c50;--line:#cfc6b5;--serif:Editorial,Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.8 Arial,sans-serif}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #b36d3e;outline-offset:6px}.skip-link{position:absolute;top:-80px;left:12px;z-index:100;background:var(--paper);padding:12px}.skip-link:focus{top:12px}.site-note{text-align:center;font:italic 15px/1.6 var(--serif);background:#d9d2bf;padding:8px 15px}header{display:flex;align-items:center;justify-content:space-between;padding:26px 5%;gap:30px;min-height:114px}.brand{font:44px/.8 var(--serif);letter-spacing:-2px;white-space:nowrap}.brand span{font:9px/1 Arial,sans-serif;letter-spacing:4px;display:block;margin-top:15px;text-align:center}.brand:focus-visible{outline-offset:12px}nav{display:flex;align-items:center;gap:30px;font-size:10px;text-transform:uppercase;letter-spacing:1.7px}nav a{padding:12px 0;min-height:44px}.nav-cta{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;background:var(--olive);color:var(--paper);padding:14px 24px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.04}em{font-weight:400}.eyebrow{font-size:9px;letter-spacing:2px;line-height:1.8;text-transform:uppercase;font-weight:500}h2{font-size:clamp(43px,5vw,76px);letter-spacing:-1.8px}h3{font-size:32px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 26px;background:var(--forest);color:var(--paper);font-size:10px;letter-spacing:1.4px;text-transform:uppercase;border:1px solid transparent;cursor:pointer}.button:hover,.nav-cta:hover{background:#31382a;color:#fff}.text-link{display:inline-block;font-size:10px;text-transform:uppercase;letter-spacing:1.5px;line-height:1.8;border-bottom:1px solid currentColor;padding:8px 0 6px;margin-top:22px;min-height:40px}.editorial-opening{position:relative;background:var(--forest);color:var(--paper)}.opening-image{margin:0}.opening-photograph{width:100%;height:auto;max-height:850px;object-fit:cover;object-position:center 40%}.opening-title-card{position:absolute;bottom:10%;left:6%;max-width:660px;z-index:1;text-shadow:0 2px 20px #1e251b99}.opening-title-card h1{font-size:clamp(46px,5.7vw,88px);letter-spacing:-2.8px;line-height:.98;margin:22px 0}.opening-title-card .eyebrow{color:#fff8e9}.opening-description{max-width:340px;font:19px/1.5 var(--serif);margin:0 0 25px}.opening-title-card .button{background:var(--paper);color:var(--ink);text-shadow:none}.opening-title-card .button:hover{background:#d8cdb8}.opening-image figcaption{position:absolute;bottom:35px;right:5%;font:36px/1 Hand,cursive;color:#fff5df;max-width:240px;text-align:right;text-shadow:0 2px 15px #1d251b}
.memory-intro{background:var(--olive);color:var(--paper);padding:85px 7% 105px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%;position:relative}.hero-copy{grid-column:2;grid-row:1;max-width:440px}.hero-copy h2{font-size:clamp(42px,4.8vw,69px);margin:20px 0 24px}.hero-copy .intro{font-size:13px;line-height:1.95;color:#f1eddf}.memory-spread{grid-column:1;grid-row:1;position:relative;margin-top:-145px;padding:20px 15% 90px 0;z-index:2}.memory-spread>img:first-child{border:12px solid var(--paper);box-shadow:0 8px 20px #24291824;transform:rotate(-4deg)}.memory-spread .memory-small{width:42%;position:absolute;right:0;bottom:0;border:9px solid #e7decc;transform:rotate(5deg);box-shadow:0 8px 20px #24291824}.memory-spread figcaption{font:31px/1.05 Hand,cursive;margin-top:28px;max-width:58%;padding-left:18px}.section{padding:105px 7%}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:65px}.section-top h2{margin-top:18px}.section-top>p{max-width:270px;font:20px/1.45 var(--serif);color:var(--muted)}.stories{background:var(--paper)}.gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:50px 5%;align-items:start}.gallery-item{border:0;background:none;padding:0;text-align:left;cursor:zoom-in;grid-column:span 6;min-width:0}.gallery-item .photo{display:block;overflow:hidden;border-radius:3px}.gallery-item img{width:100%;height:auto;transition:transform .4s}.gallery-item:hover img{transform:scale(1.025)}.gallery-item:nth-child(1){grid-column:2/6}.gallery-item:nth-child(2){grid-column:7/13;margin-top:105px}.gallery-item:nth-child(3){grid-column:1/7;margin-top:10px}.gallery-item:nth-child(4){grid-column:8/13;margin-top:100px}.gallery-item:nth-child(5){grid-column:2/6}.gallery-item:nth-child(6){grid-column:7/12;margin-top:80px}.gallery-item:nth-child(7){grid-column:1/6;margin-top:-40px}.gallery-item:nth-child(8){grid-column:7/13;margin-top:95px}.caption{display:block;font:italic 18px/1.4 var(--serif);color:var(--muted);margin-top:13px}.portfolio-next{text-align:center;margin:65px auto 0}.gallery-foot{font:italic 27px/1.3 var(--serif)}
.about{background:#ded8c8;text-align:center;padding-bottom:85px}.about-copy{max-width:1080px;margin:auto}.about-copy h2{margin:25px 0 25px;font-size:clamp(56px,7.3vw,105px)}.story-lead{font:25px/1.4 var(--serif);max-width:630px;margin:0 auto 40px}.story-prose{text-align:left;columns:2;column-gap:65px;max-width:940px;margin:auto}.story-prose p{font-size:13px;line-height:1.95;margin-bottom:20px;break-inside:avoid}.story-signoff{font:38px/1.2 Hand,cursive;margin:38px 0}.about-image{max-width:485px;margin:45px auto 55px;background:var(--paper);padding:14px 14px 20px;transform:rotate(-2deg);box-shadow:0 12px 28px #5244391f}.about-image .photo{display:block;overflow:hidden}.about-image img{width:100%;height:auto}.about-image figcaption{font:italic 19px/1.4 var(--serif);margin:15px 10px 0}.about-values{display:grid;grid-template-columns:repeat(3,1fr);max-width:1180px;margin:auto;gap:40px;padding-top:40px;border-top:1px solid #bcb49f;text-align:left}.about-values h3{font-size:30px;margin:15px 0}.about-values article>p:last-child{font-size:12px;line-height:1.9}.about-instagram{margin-top:40px}
.sessions{background:var(--walnut);color:var(--paper)}.session-list{display:flex;gap:55px;margin:0 0 75px}.session-list article{display:flex;gap:22px;flex:1;border-top:1px solid #bdb3a660;padding-top:26px}.number{font:italic 26px var(--serif);color:#d0bba1}.session-list h3{font-size:31px;margin-bottom:10px}.session-list p{font-size:12px;color:#e5dbce}.packages-intro{margin:0 0 35px;max-width:460px}.packages-intro>p:last-child{margin-top:14px;font:22px/1.4 var(--serif)}.packages{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #bdb3a660;border-bottom:1px solid #bdb3a660}.package{padding:40px 30px 35px;border-right:1px solid #bdb3a660}.package:first-child{padding-left:0}.package:last-child{border-right:0}.package h3{font-size:60px;margin:22px 0}.package-details{font-size:12px;line-height:2}.package-details strong{font-weight:400}.package>p:not(.eyebrow):last-of-type{font-size:12px;line-height:1.8;margin-top:20px;max-width:230px;color:#e0d5c6}.package .text-link{font-size:9px;letter-spacing:.8px}.availability{max-width:680px;text-align:center;margin:65px auto}.availability h3{font-size:35px;margin-bottom:20px}.availability p{font-size:13px;color:#e7ded0}.process-title{font-size:46px;margin-top:85px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:40px}.steps div{border-top:1px solid #bdb3a660;padding-top:25px}.steps span{font-size:9px;letter-spacing:1.6px}.steps p{font-size:12px;color:#e2d8cb;margin-top:18px}
.session-faq{display:grid;grid-template-columns:1fr 1.1fr;gap:12%;background:var(--paper)}.session-faq>div>p:last-child{margin-top:20px;font-size:12px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{font:23px/1.3 var(--serif);padding:23px 0;cursor:pointer;min-height:48px}.faq-list p{font-size:13px;line-height:1.9;padding:0 10px 25px 0;color:var(--muted)}
.connect{background:#d1b49a;text-align:center;padding:95px 7%}.connect h2{font-size:clamp(65px,8vw,110px);margin:25px 0}.connect>p:not(.eyebrow){font-size:13px}.inquiry-form{max-width:760px;margin:45px auto 30px;text-align:left;display:grid;gap:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}label{display:block;font-size:10px;letter-spacing:.6px;margin-bottom:10px}label span{font-size:10px}input,select,textarea{width:100%;border:0;border-bottom:1px solid #7b6654;background:#f4eee347;color:var(--ink);border-radius:0;padding:13px 12px;font-size:13px;min-height:48px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#675545}.form-note{font-size:11px;line-height:1.7}.form-trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}.inquiry-form .button{justify-self:start;min-width:190px}.contact-alternative a{border-bottom:1px solid}.connect>.text-link{margin-top:15px}footer{display:flex;align-items:center;justify-content:space-between;padding:55px 7% 25px;gap:30px;flex-wrap:wrap;background:var(--paper)}footer p{font-size:11px;line-height:1.9}footer>a:not(.brand){font-size:9px;letter-spacing:1.5px}footer small{font-size:10px;flex-basis:100%;border-top:1px solid var(--line);padding-top:20px;margin-top:15px;color:var(--muted)}dialog{padding:60px 70px;background:#29281f;color:var(--paper);border:0;width:100vw;height:100dvh;max-width:100vw;max-height:100dvh}dialog::backdrop{background:#29281f}dialog .photo{display:block;width:100%;height:100%;overflow:hidden}dialog img{width:100%;height:100%;object-fit:contain}dialog button{position:absolute;z-index:5;background:var(--paper);color:var(--ink);border:0;padding:12px 15px;min-width:44px;min-height:44px;cursor:pointer;font-size:11px}.close{top:12px;right:15px}.prev{top:50%;left:8px}.next{top:50%;right:8px}
@media(min-width:1600px){header,footer{padding-left:8%;padding-right:8%}.opening-title-card{left:8%}.section{padding-left:12%;padding-right:12%}}
@media(max-width:950px){header{gap:20px;padding:25px 5%}.brand{font-size:38px}nav{gap:17px;font-size:9px;letter-spacing:1px}.nav-cta{display:none}.opening-title-card{max-width:540px;bottom:8%}.opening-title-card h1{font-size:64px}.opening-description{font-size:17px}.opening-image figcaption{font-size:28px;max-width:180px;bottom:20px}.memory-intro{padding:70px 6%;gap:8%}.memory-spread{padding-bottom:75px;margin-top:-100px}.memory-spread>img:first-child{border-width:9px}.memory-spread .memory-small{border-width:7px}.memory-spread figcaption{font-size:27px}.hero-copy h2{font-size:47px}.section{padding:80px 6%}.story-prose{column-gap:35px}.package{padding:32px 20px}.package h3{font-size:51px}.about-values{gap:25px}.about-values h3{font-size:27px}.session-faq{gap:7%}}
@media(max-width:650px){body{font-size:13px}.site-note{font-size:14px;padding:6px}header{flex-direction:column;padding:24px 5% 15px;gap:18px;min-height:0}.brand{font-size:40px}.brand span{font-size:8px;letter-spacing:3.5px;margin-top:12px}nav{justify-content:center;gap:21px;font-size:8px;letter-spacing:.8px;flex-wrap:wrap}nav a{padding:9px 0;min-height:36px}.opening-photograph{height:auto;object-fit:contain}.opening-title-card{position:static;max-width:none;padding:32px 7% 65px;text-align:center;text-shadow:none}.opening-title-card .eyebrow{font-size:8px;letter-spacing:1.3px}.opening-title-card h1{font-size:clamp(42px,10.5vw,65px);letter-spacing:-1.5px;margin:20px 0}.opening-description{font-size:18px;max-width:330px;margin:0 auto 25px}.opening-title-card .button{font-size:9px}.opening-image figcaption{display:none}.editorial-opening{display:flex;flex-direction:column}.opening-image{order:-1}.memory-intro{grid-template-columns:1fr;gap:40px;padding:0 8% 60px}.memory-spread{grid-column:1;grid-row:1;margin-top:-25px;max-width:500px;width:100%;padding:0 14% 70px 0}.memory-spread>img:first-child{border-width:8px}.memory-spread .memory-small{width:37%;border-width:7px;bottom:5px}.memory-spread figcaption{font-size:30px;padding-left:6px;margin-top:20px}.hero-copy{grid-column:1;grid-row:2;max-width:none;text-align:center}.hero-copy h2{font-size:52px}.hero-copy .intro{text-align:left;font-size:13px;line-height:1.9}.section{padding:65px 7%}.section-top{display:block;margin-bottom:40px}.section-top h2{font-size:54px}.section-top>p{font-size:20px;margin-top:22px;max-width:320px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 18px}.gallery-item:nth-child(n){grid-column:auto;margin-top:0}.gallery-item:nth-child(2n){margin-top:50px}.caption{font-size:15px;margin-top:10px}.gallery-item:nth-child(3),.gallery-item:nth-child(8){grid-column:1/-1;margin-top:0}.portfolio-next{margin-top:40px}.gallery-foot{font-size:24px}.about-copy h2{font-size:75px;margin:24px 0}.story-lead{font-size:23px;margin-bottom:30px}.story-prose{columns:1}.story-prose p{font-size:13px}.story-signoff{font-size:34px;margin:30px 0}.about-image{margin:35px auto 45px;max-width:360px;padding:10px 10px 16px}.about-image figcaption{font-size:17px}.about-values{grid-template-columns:1fr;gap:28px;text-align:center;padding-top:30px}.about-values article{padding-bottom:28px;border-bottom:1px solid #bcb49f}.about-values article:last-child{border:0;padding-bottom:0}.about-values h3{font-size:34px}.about-values article>p:last-child{font-size:13px;max-width:400px;margin:auto}.session-list{display:grid;gap:27px;margin-bottom:50px}.session-list article{gap:18px}.session-list h3{font-size:30px}.packages{grid-template-columns:1fr;border-bottom:0}.package:nth-child(n){padding:30px 0;border-right:0;border-bottom:1px solid #bdb3a660}.package h3{font-size:58px;margin:16px 0}.package>p:not(.eyebrow):last-of-type{max-width:none}.availability{margin:50px auto}.availability h3{font-size:35px}.process-title{font-size:40px;margin-top:55px}.steps{grid-template-columns:1fr;gap:25px;margin-top:30px}.steps p{font-size:13px;margin-top:12px}.session-faq{grid-template-columns:1fr;gap:25px}.faq-list summary{font-size:23px}.connect{padding:65px 7%}.connect h2{font-size:75px}.inquiry-form{margin-top:35px;gap:22px}.form-row{grid-template-columns:1fr;gap:22px}.inquiry-form .button{width:100%}footer{padding:45px 7% 20px;gap:25px}footer .brand{width:100%;text-align:center}footer .brand span{max-width:200px;margin:12px auto 0}footer p{max-width:200px}dialog{padding:65px 35px}.prev,.next{font-size:9px;padding:10px 8px;min-width:34px}.prev{left:2px}.next{right:2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

@media(min-width:651px){.opening-title-card{max-width:480px}.opening-title-card h1{font-size:clamp(52px,4.8vw,70px);letter-spacing:-1.6px}.opening-image figcaption{bottom:30px}}

/* A clearer introduction and a photograph-led opening on phones. */
.about-copy > .eyebrow{font:400 clamp(24px,2.8vw,38px)/1.3 var(--serif);letter-spacing:.2px;text-transform:none;max-width:760px;margin:0 auto 30px;text-wrap:balance}
@media(max-width:650px){
 .about-copy > .eyebrow{font-size:clamp(25px,6.8vw,34px);line-height:1.35;max-width:340px;margin-bottom:28px}
 .editorial-opening{display:block;isolation:isolate;min-height:740px;min-height:clamp(700px,92svh,850px);overflow:hidden}
 .opening-image{position:absolute;inset:0;z-index:-2}
 .opening-photograph{width:100%;height:640px;max-height:none;object-fit:cover;object-position:53% top}
 .editorial-opening::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,transparent 210px,rgba(28,33,23,.10) 350px,rgba(28,33,23,.74) 510px,var(--forest) 640px)}
 .opening-title-card{position:relative;left:auto;bottom:auto;max-width:none;padding:450px 7% 65px;text-align:left;text-shadow:0 2px 18px #1e251b66}
 .opening-title-card .eyebrow{font-size:8px;letter-spacing:1.25px;max-width:300px}
 .opening-title-card h1{font-size:clamp(40px,10.6vw,65px);line-height:1.02;letter-spacing:-1.3px;margin:17px 0}
 .opening-description{font-size:18px;line-height:1.4;max-width:310px;margin:0 0 22px}
 .opening-title-card .button{font-size:9px;text-shadow:none}
}

@media(max-width:650px){.about-copy h2{font-size:clamp(60px,19vw,75px)}}
/* Kayla's warm earth palette and connected photographic sequences. */
:root{--paper:#fbf0e3;--ink:#30251f;--muted:#6c5144;--olive:#566344;--forest:#303e2d;--walnut:#574038;--clay:#ae5c3c;--line:#d5b8a2;--plum:#705369;--peach:#efc2a5}
.site-note{background:#e6aa82;color:#392a22;font:700 clamp(18px,1.6vw,23px)/1.4 Georgia,serif;padding:14px 20px}
nav{font-size:12px;font-weight:700;letter-spacing:1px;gap:25px}nav a{min-height:44px;display:flex;align-items:center}.nav-cta{font-weight:700;font-size:11px}
.opening-title-card .eyebrow{font-size:11px;font-weight:700;letter-spacing:1.4px}
.memory-intro{background:#566344;padding-bottom:85px}.hero-copy{text-align:center;max-width:490px}.hero-copy .intro{text-align:center;font-size:15px;line-height:1.85}.hero-copy .eyebrow{font-size:11px;font-weight:700}.hero-copy h2{margin:20px 0 28px}
.memory-spread{padding:0 0 0 0;margin-top:-100px;display:grid;grid-template-columns:repeat(10,1fr);grid-template-rows:auto auto auto;align-items:start}
.memory-spread>img:first-child{grid-column:1/10;grid-row:1;transform:rotate(-3deg);border-width:10px}
.memory-spread .memory-small{position:relative;right:auto;bottom:auto;width:100%;grid-column:5/11;grid-row:2;transform:rotate(4deg);margin-top:-55px;border-width:9px}
.memory-spread figcaption{grid-column:1/-1;grid-row:3;max-width:none;text-align:center;font:italic 29px/1.25 var(--serif);margin-top:30px;padding:0}
.stories .section-top{display:block;text-align:center;margin-bottom:40px}.stories .section-top>p{max-width:520px;margin:22px auto 0}.stories{padding-top:85px;padding-bottom:75px}
.portfolio-collection{max-width:1260px;margin:auto}.portfolio-chapter{margin:0 0 44px}.portfolio-chapter>:is(h2,h3){text-align:center;font:italic 29px/1.3 var(--serif);margin:0 0 22px;color:#76513f}
.chapter-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;grid-auto-flow:dense;align-items:center}
.chapter-grid .gallery-item:nth-child(n){grid-column:span 2;margin:0;width:100%;align-self:center}
.chapter-grid .gallery-item.landscape:nth-child(n){grid-column:span 3}
.chapter-grid .gallery-item .photo{border-radius:5px}.chapter-grid .gallery-item img{height:auto;width:100%;object-fit:contain}.portfolio-next{margin-top:35px}
.about{background:#efc2a5;padding-top:75px}.about-copy>.about-introduction{font:400 clamp(54px,6.6vw,88px)/1.05 Hand,cursive;letter-spacing:0;max-width:850px;margin:0 auto 35px}.about-introduction span{display:block}
.about-copy>.about-image{max-width:520px;margin:0 auto 65px;transform:none;border-radius:8px;padding:12px 12px 18px;box-shadow:0 12px 35px #6c3b2420}.about-image .photo{border-radius:4px}.about-image figcaption{font-size:20px}
.about-copy h2{font-size:clamp(50px,6vw,84px);margin:25px auto 30px;text-wrap:balance}.story-lead{font-size:27px;max-width:700px}.story-prose{columns:1;max-width:700px;text-align:center}.story-prose p{font-size:16px;line-height:1.9;margin-bottom:24px}
.about-values{border:0;gap:18px;margin-top:45px;padding:0}.about-values article{background:#f9e7d8;padding:32px 25px;border-radius:8px;border-top:4px solid #ad603f}.about-values article:nth-child(2){background:#e5d8e1;border-color:#705369}.about-values article:nth-child(3){background:#dce2cf;border-color:#566344}.about-values .eyebrow{font-size:11px;font-weight:700}.about-values article>p:last-child{font-size:14px;line-height:1.8}.about-values h3{font-size:31px}.about-instagram{font-size:11px;font-weight:700}
.sessions{background:#705369}.session-faq{background:#f4e7da}.connect{background:#e6aa82}.button{border-radius:3px}.text-link{font-weight:600}footer{background:#e8d7c5}
@media(max-width:950px) and (min-width:651px){nav{font-size:10px;gap:18px}.memory-spread{margin-top:-55px}.about-values{gap:12px}.about-values article{padding:25px 18px}.about-values h3{font-size:27px}}
@media(max-width:650px){
 .site-note{font-size:19px;line-height:1.4;padding:13px 16px}header{padding:25px 5% 18px;gap:18px}
 nav{display:grid;grid-template-columns:auto auto;column-gap:27px;row-gap:0;font-size:12px;letter-spacing:.7px;text-align:center}nav a{justify-content:center;min-height:44px;padding:8px 0}.brand{font-size:44px}
 .opening-title-card .eyebrow{font-size:10px;letter-spacing:1px;line-height:1.7}.opening-title-card{padding-top:450px}
 .memory-intro{padding:0 6% 60px;gap:35px}.memory-spread{margin-top:-22px;max-width:460px;padding:0;grid-template-columns:repeat(10,1fr)}.memory-spread>img:first-child{border-width:7px;grid-column:1/10}.memory-spread .memory-small{grid-column:4/11;width:100%;margin-top:-30px;border-width:7px;bottom:auto}.memory-spread figcaption{font-size:27px;line-height:1.25;margin:25px 8px 0;max-width:none;padding:0}
 .hero-copy h2{font-size:clamp(44px,12vw,58px)}.hero-copy .intro{font-size:15px;text-align:center;line-height:1.9}.hero-copy .eyebrow{font-size:10px}
 .stories{padding:60px 5%}.stories .section-top h2{font-size:50px}.stories .section-top>p{font-size:22px}.portfolio-chapter{margin-bottom:35px}.portfolio-chapter>:is(h2,h3){font-size:25px;margin-bottom:17px}.chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:center}.chapter-grid .gallery-item:nth-child(n){grid-column:span 1;margin:0}.chapter-grid .gallery-item.landscape:nth-child(n){grid-column:1/-1}.portfolio-next .gallery-foot{font-size:25px}
 .about{padding:60px 7%}.about-copy>.about-introduction{font-size:clamp(49px,14vw,67px);line-height:1.1;margin-bottom:30px}.about-copy>.about-image{margin:0 auto 45px;padding:9px 9px 15px;max-width:390px}.about-image figcaption{font-size:18px}.about-copy h2{font-size:clamp(48px,15vw,65px);line-height:1.05;letter-spacing:-1px}.story-lead{font-size:25px}.story-prose p{font-size:15px;line-height:1.9}.about-values{gap:16px;margin-top:30px}.about-values article:nth-child(n){padding:28px 20px;border-bottom:0}.about-values h3{font-size:33px}.about-values article>p:last-child{font-size:14px}.about-instagram{font-size:10px;letter-spacing:1px}
}
/* Keep every mobile row filled; pair adjacent vertical portraits. */
@media(max-width:650px){.chapter-grid .gallery-item.portrait:nth-child(n){grid-column:1/-1}.chapter-grid .gallery-item.portrait:has(+ .portrait):nth-child(n),.chapter-grid .gallery-item.portrait + .portrait:nth-child(n){grid-column:span 1}}
@media(min-width:651px){.chapter-grid{display:block;columns:2;column-gap:14px}.chapter-grid .gallery-item:nth-child(n){display:inline-block;width:100%;margin:0 0 14px;break-inside:avoid;vertical-align:top}}

/* Compact navigation and a wider opening photograph on phones. */
@media(max-width:650px){
 .site-note{padding:7px 10px;font-size:18px;line-height:1.35}
 header{padding:17px 5% 8px;gap:12px}
 .brand{font-size:40px}.brand span{margin-top:10px}
 nav{display:flex;flex-wrap:nowrap;width:100%;justify-content:space-between;gap:10px;font-size:11px;letter-spacing:.65px}
 nav a{white-space:nowrap;min-height:44px;padding:8px 0}
 .opening-photograph{height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center top}
 .opening-title-card{padding-top:calc(100vw - 30px)}
 .editorial-opening{min-height:0}
 .editorial-opening::after{background:linear-gradient(180deg,transparent 0,transparent calc(100vw - 100px),rgba(28,33,23,.3) calc(100vw - 30px),var(--forest) calc(100vw + 70px))}
}
@media(max-width:360px){nav{font-size:10px;gap:7px;letter-spacing:.35px}.site-note{font-size:16px}}

/* An even white outline around Kayla’s portrait. */
.about-copy>.about-image{padding:0;border:8px solid #fff;background:#fff;box-shadow:none;border-radius:8px;overflow:hidden}
.about-copy>.about-image .photo{border-radius:0}

/* Keep the vision accent visible after the mobile card reset. */
.about-values article:nth-child(3){border-top:4px solid #566344}
.availability .booking-note{margin:20px auto;max-width:580px;line-height:1.8}

/* Let the original story read with the same warmth as its headline. */
.story-prose p{font-family:var(--serif);font-size:22px;line-height:1.65;margin-bottom:26px}
.portfolio-chapter.portfolio-featured .chapter-grid{display:grid;columns:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.portfolio-featured .chapter-grid .gallery-item:nth-child(n){display:block;grid-column:span 1;width:100%;margin:0}
.portfolio-featured{padding-bottom:35px;border-bottom:1px solid var(--line)}
.portfolio-chapter:has(.chapter-grid>.gallery-item:only-child) .chapter-grid{columns:auto;max-width:620px;margin-inline:auto}
@media(max-width:650px){.story-prose p{font-size:21px;line-height:1.65;margin-bottom:25px}.portfolio-featured .chapter-grid .gallery-item.landscape:nth-child(n){grid-column:1/-1}}

/* Lightroom supplied the senior rendition sideways; orient it for display. */
.gallery-item .photo.archery{position:relative;aspect-ratio:2/3;overflow:hidden}
.gallery-item .photo.archery img{position:absolute;top:50%;left:50%;width:150%;height:auto;max-width:none;transform:translate(-50%,-50%) rotate(90deg)}
dialog .photo.archery{position:relative;width:min(75vw,53.33vh);height:min(112.5vw,80vh);aspect-ratio:2/3}
dialog .photo.archery img{position:absolute;top:50%;left:50%;width:150%;max-width:none;max-height:none;height:auto;transform:translate(-50%,-50%) rotate(90deg)}

dialog .photo.archery{margin-inline:auto}

@media(min-width:651px){.portfolio-paired .chapter-grid{display:grid;columns:auto;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}.portfolio-paired .chapter-grid .gallery-item:nth-child(n){grid-column:span 1;margin:0}}

/* Keep the three selected lakeside photographs together without an orphaned print. */
@media(min-width:651px){.maternity-trio .chapter-grid{display:grid;columns:auto;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center}.maternity-trio .chapter-grid .gallery-item:nth-child(n){grid-column:span 1;margin:0}}
@media(max-width:650px){.maternity-trio .chapter-grid .gallery-item:last-child:nth-child(n){grid-column:1/-1}}

/* Balanced opening columns: pink newborn above the boy, with a consistent gap. */
.portfolio-chapter.portfolio-featured .chapter-grid{display:block;columns:2;column-gap:14px}
.portfolio-featured .chapter-grid .gallery-item:nth-child(n){display:inline-block;width:100%;margin:0 0 14px;break-inside:avoid;vertical-align:top}
.portfolio-featured .chapter-grid .gallery-item:nth-child(3){break-before:column}
.portfolio-featured .chapter-grid .gallery-item:nth-child(n) .photo{margin:0}
@media(max-width:650px){.portfolio-chapter.portfolio-featured .chapter-grid{column-gap:10px}.portfolio-featured .chapter-grid .gallery-item:nth-child(n){margin-bottom:10px}}

/* A photographic album: complete frames, shared edges, and a quieter rhythm. */
.album-collection{max-width:1120px}
.album-chapter{margin:0 0 64px;padding:0;border:0}
.album-chapter>:is(h2,h3){display:flex;align-items:center;gap:24px;text-align:left;font-size:clamp(26px,2.7vw,36px);margin-bottom:25px;color:var(--muted)}
.album-chapter>:is(h2,h3)::after{content:"";height:1px;background:var(--line);flex:1;min-width:30px}
.album-rows{display:grid;gap:14px}
.album-row{display:grid;grid-template-columns:var(--row-columns);gap:14px;align-items:start}
.album-row .gallery-item:nth-child(n){display:block;grid-column:auto;width:100%;margin:0;min-width:0;align-self:start;break-before:auto}
.album-row .gallery-item .photo{display:block;border-radius:2px;overflow:hidden}
.album-row .gallery-item img{width:100%;height:auto;object-fit:contain}
.album-row-single{max-width:880px;width:100%;margin-inline:auto}
.album-row-full{max-width:none}
.album-chapter:first-child .album-row:first-child{margin-bottom:3px}
@media(max-width:650px){
 .stories{padding:55px 5%}
 .album-chapter{margin-bottom:42px}
 .album-chapter>:is(h2,h3){font-size:26px;line-height:1.2;gap:14px;margin-bottom:18px}
 .album-chapter>:is(h2,h3)::after{min-width:18px}
 .album-rows,.album-row{gap:9px}
 .album-row-mixed{grid-template-columns:1fr}
 .album-row-mixed:has(>.gallery-item.portrait:first-child):has(>.gallery-item.portrait:last-child){grid-template-columns:var(--row-columns)}
 .album-row .gallery-item:nth-child(n){grid-column:auto;margin:0}
 .album-row-single{max-width:none}
}

/* A calm ivory surround and an editorial introduction for the field portrait. */
.about{background:#f2e8d9}
.about-copy>.about-introduction{
 font-family:var(--serif);font-size:clamp(58px,7vw,92px);font-weight:400;
 line-height:1.02;letter-spacing:-1.5px;color:var(--forest);
 text-transform:none;margin:0 auto 38px;max-width:850px;
}
.about-introduction span:last-child{
 font-size:.63em;font-style:italic;line-height:1.2;letter-spacing:-.5px;margin-top:12px;
}
@media(max-width:650px){
 .about-copy>.about-introduction{font-size:clamp(48px,12.5vw,66px);line-height:1.05;letter-spacing:-1px;margin-bottom:30px}
 .about-introduction span:last-child{font-size:.66em;margin-top:10px;letter-spacing:-.3px}
}

/* Dedicated portfolio page keeps the complete collection off the homepage. */
.portfolio-page .section-top h1{font-size:clamp(43px,5vw,76px);letter-spacing:-1.8px}
.portfolio-page .album-chapter>h2{letter-spacing:normal}
.portfolio-page nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px}
@media(max-width:650px){.portfolio-page .section-top h1{font-size:50px}}

/* Neutral linen lets the peach, plum, and sage values cards read clearly. */
.about{background:#f8f5ee}
.story-prose{max-width:720px;text-align:left;columns:1}
.story-prose p{ text-align:left }
.session-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 55px}
.inquiry-form label{font-size:14px;font-weight:600;line-height:1.5}
.inquiry-form input:not([type="hidden"]),.inquiry-form select,.inquiry-form textarea{border:1px solid #795d48;background:#fbf1e7;color:#332b25}
.inquiry-form input::placeholder,.inquiry-form textarea::placeholder{color:#625043;opacity:1}
@media(max-width:650px){.session-list{grid-template-columns:1fr;gap:27px}}

/* A clear invitation to see the photographs, in Kayla's existing palette. */
.portfolio-cta{font-size:13px;letter-spacing:.5px;text-transform:none;font-weight:700;min-height:52px;padding:15px 28px;border-radius:4px}
.opening-title-card .portfolio-hint{font:14px/1.6 Arial,sans-serif;max-width:345px;margin:15px 0 0}
.opening-portfolio-link{display:block;position:relative}
.portfolio-image-label{position:absolute;top:22px;right:22px;z-index:2;background:var(--paper);color:var(--ink);font:700 12px/1.4 Arial,sans-serif;border-radius:4px;padding:13px 18px;box-shadow:0 2px 12px #30251f1c}
.opening-portfolio-link:hover .portfolio-image-label{background:#e6aa82}
.opening-image figcaption{pointer-events:none}
.memory-preview{display:block;min-width:0;grid-column:1/10;grid-row:1;transform:rotate(-3deg);border:10px solid var(--paper);box-shadow:0 8px 20px #24291824;overflow:hidden}
.memory-preview img{height:auto;width:100%;border:0;transform:none}
.memory-spread .memory-preview.memory-small{padding:0;overflow:hidden;background:var(--paper)}
.memory-spread .memory-preview.memory-small img{position:static;display:block;width:100%;margin:0;transform:none;border:0}
.hero-copy .portfolio-cta{margin-top:25px;background:var(--paper);color:var(--ink)}
.hero-copy .portfolio-cta:hover{background:#e6aa82}
.portfolio-context{font:12px/1.6 Arial,sans-serif;margin-top:12px}
.portfolio-categories{max-width:950px;margin:0 auto 50px;display:flex;justify-content:center;gap:12px;flex-wrap:wrap;text-transform:none;letter-spacing:0}
.portfolio-categories a{display:inline-flex;min-height:44px;align-items:center;padding:10px 17px;border:1px solid var(--line);border-radius:24px;font-size:13px;background:#fff7ed}
.portfolio-categories a:hover{background:var(--walnut);color:var(--paper)}
.portfolio-closing-copy{font:20px/1.6 var(--serif);max-width:490px;margin:18px auto 25px}
.portfolio-next>.button{display:table;margin:0 auto 8px;font-size:12px;letter-spacing:.5px;text-transform:none;border-radius:4px}
.portfolio-next>.text-link{margin-top:10px}
.session-process{max-width:1050px;margin:65px auto 0}
.session-process>h3{font-size:42px;margin-top:14px}
.process-list{list-style:decimal-leading-zero;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin:35px 0 0;padding-left:28px}
.process-list li{padding-left:8px;border-top:1px solid #bdb3a660;padding-top:22px}
.process-list li::marker{font:italic 21px var(--serif);color:#e6c6ad}
.process-list h4{font:26px/1.3 var(--serif);margin:0 0 14px}
.process-list p{font-size:13px;line-height:1.8;color:#e7ded0}
@media(max-width:650px){
 .portfolio-image-label{top:15px;right:15px;font-size:12px;padding:12px 16px}
 .opening-portfolio-link{height:100%}
 .opening-title-card .portfolio-hint{font-size:13px;max-width:310px}
 .opening-title-card .portfolio-cta{font-size:13px;width:100%;max-width:320px}
 .memory-preview{border-width:8px}
 .portfolio-categories{width:auto;gap:8px;margin-bottom:36px}
 .portfolio-categories a{font-size:12px;padding:10px 13px}
 .process-list{grid-template-columns:1fr;gap:24px;padding-left:26px}
 .session-process>h3{font-size:36px}
}

/* A readable privacy notice, connected to the inquiry form. */
.privacy-page{max-width:920px;margin:auto}
.privacy-page h1{font-size:clamp(42px,5vw,68px);margin:22px 0}
.privacy-page h2{font-size:32px;letter-spacing:-.5px;margin:0 0 14px}
.privacy-page section{margin:36px 0}
.privacy-page p,.privacy-page li{font-size:16px;line-height:1.85}
.privacy-page p+p{margin-top:16px}
.privacy-page a:not(.button),.privacy-form-note a{text-decoration:underline;text-underline-offset:3px}
.privacy-page .privacy-date{font-size:13px;color:var(--muted);margin-bottom:24px}
.session-delivery-note{max-width:720px;margin:28px auto 0;text-align:center;font-size:14px;line-height:1.85;color:#e7ded0}

/* Keep the opening phrase together on small screens. */
#about-title .about-title-line{white-space:nowrap}
@media(max-width:650px){.about-copy #about-title{font-size:clamp(28px,8.8vw,57px);line-height:1.15;letter-spacing:-.5px}}

/* A consistent warm neutral for the purpose, mission, and vision cards. */
.about-values article:nth-child(n){background:var(--peach);border-top:3px solid #737b62;color:#302a25}

/* Warm keepsakes, honest client placeholders, and space to prepare. */
.hero-signoff,.story-signoff,.footer-tagline{font-family:var(--serif);font-style:normal;font-weight:400;letter-spacing:.15px;text-transform:none;line-height:1.5}
.hero-signoff{font-size:clamp(25px,2.4vw,34px);line-height:1.35;margin:0 0 25px}
.held-close{max-width:920px;margin:45px auto 0;padding:38px 42px;background:var(--peach);border-top:3px solid #737b62;border-radius:8px;text-align:left}
.held-close h3{font-size:clamp(31px,3.4vw,44px);margin:0 0 24px}
.held-close p{font-size:16px;line-height:1.85;margin:16px 0 0}
.held-close strong{font-weight:600}
.prints-block{max-width:920px;margin:65px auto 0;padding:42px;background:var(--peach);color:var(--ink);border-top:3px solid #737b62;border-radius:8px;text-align:center}
.prints-block h3,.before-session h3{font-size:clamp(34px,4vw,46px);margin:0 0 22px}
.prints-block>p{max-width:680px;margin:0 auto 20px;font-size:16px;line-height:1.85}
.prints-block .button{font-size:13px;text-transform:none;letter-spacing:.3px;max-width:100%;white-space:normal}
.before-session{max-width:900px;margin:55px auto 0;border-top:1px solid #bdb3a660;padding-top:35px}
.before-session p{font-size:16px;line-height:1.9;max-width:760px;color:#f2e8df}
.testimonials{background:var(--paper)}
.testimonials>h2{text-align:center;font-size:clamp(42px,5vw,65px);margin-bottom:38px}
.testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:1120px;margin:auto}
.testimonial-card{padding:32px 28px;background:var(--peach);border-top:3px solid #737b62;border-radius:8px;min-width:0}
.testimonial-card blockquote{margin:0 0 28px;font:italic 24px/1.5 var(--serif);overflow-wrap:anywhere}
.testimonial-card figcaption{font-size:14px;line-height:1.7}
.testimonial-card figcaption strong,.testimonial-card figcaption span{display:block}
.content-placeholder{font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.footer-location{max-width:430px}
.footer-tagline{display:block;font-size:25px;line-height:1.3;margin-top:16px}
.sun-mark{display:block;width:30px;height:30px;flex:0 0 30px;color:#efc2a5}
.session-list .sun-mark{margin-top:2px}
.process-list{list-style:none;padding-left:0}
.process-list li{display:flex;gap:18px;padding-left:0}
.process-list li>.sun-mark{width:25px;height:25px;flex-basis:25px;margin-top:3px}
.process-copy{min-width:0}
@media(max-width:650px){
 .held-close,.prints-block{padding:28px 22px}
 .held-close p,.prints-block>p,.before-session p{font-size:15px}
 .held-close{margin-top:32px}
 .prints-block{margin-top:45px}
 .before-session{margin-top:40px;padding-top:28px}
 .testimonial-grid{grid-template-columns:1fr;gap:16px}
 .testimonial-card{padding:28px 22px}
 .prints-block .button{width:100%}
 .process-list{padding-left:0}
 .process-list li{gap:14px}
 footer .footer-location{max-width:none;width:100%}
 #about-title{font-size:clamp(36px,11vw,65px)}
}
