:root{--navy:#182c45;--deep:#102136;--gold:#e4c382;--cream:#f6f3ec;--ink:#1a2d43;--muted:#66717c}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,sans-serif;font-size:15px;line-height:1.65}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.12}h1{font-size:clamp(44px,5.1vw,78px);letter-spacing:-2px;margin-bottom:25px}h2{font-size:clamp(35px,3.6vw,52px);letter-spacing:-1px}h3{font-size:25px}em{color:var(--gold);font-weight:400}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b88b3a;outline-offset:5px}.skip{position:fixed;top:-100px;background:white;padding:12px;z-index:20}.skip:focus{top:0}header{background:var(--navy);display:flex;align-items:center;justify-content:space-between;padding:19px 5%;gap:30px;border-bottom:1px solid #ffffff20}.logo{display:block;width:270px;max-width:100%;height:auto}nav{display:flex;gap:30px;align-items:center;color:#fff;font-size:13px}nav a:hover,.text-link:hover{color:var(--gold)}.nav-cta{padding:12px 18px;border:1px solid #bba46f}.nav-cta span{margin-left:15px}#menu{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:#fff;min-height:650px}.hero-copy{padding:70px 9% 30px 10%}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.5px;margin-bottom:22px}.hero .eyebrow,.story .eyebrow,.consult .eyebrow{color:var(--gold)}.hero-copy>p:not(.eyebrow){max-width:410px;color:#d5dbe1;font-size:16px}.button{border:1px solid var(--gold);background:var(--gold);color:var(--deep);display:inline-flex;align-items:center;gap:30px;justify-content:space-between;padding:15px 22px;font-size:12px;font-weight:600;letter-spacing:.4px}.button:hover{background:#f2d8a5}.text-link{display:table;padding:15px 0;font-size:12px;text-decoration:underline;text-underline-offset:6px}.hero-note{display:flex;gap:25px;font-size:9px;letter-spacing:1px;margin-top:38px;padding-top:20px;border-top:1px solid #ffffff26;color:#c2cbd5}.hero-media{position:relative;min-height:650px;overflow:hidden}.hero-media>img,.hero-media>video{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 24%}.hero-media:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#102136aa);pointer-events:none}.image-caption{position:absolute;bottom:30px;left:32px;z-index:1;font-family:Georgia,serif;font-style:italic;font-size:20px}#video-toggle{position:absolute;top:20px;right:20px;z-index:2;background:var(--navy);color:white;border:1px solid var(--gold);padding:10px}.ribbon{display:flex;justify-content:center;gap:6%;padding:25px 5%;font-size:10px;letter-spacing:2px;border-bottom:1px solid #dbd4c7}.ribbon span:nth-child(even){color:#a17c3f}.section{padding:90px 7%}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px}.section-heading h2{margin-bottom:22px}.section-heading>p{font-size:13px;color:var(--muted)}.filters{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 30px}.filters button{border:1px solid #c7c5bc;color:var(--ink);background:transparent;padding:9px 20px;font-size:12px}.filters button.active{background:var(--navy);color:white;border-color:var(--navy)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 23px}.piece{border:0;padding:0;text-align:left;background:transparent;color:var(--ink);width:100%}.piece-image{position:relative;overflow:hidden;background:#e4e0d7;aspect-ratio:4/5;margin-bottom:17px}.piece img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.piece:hover img{transform:scale(1.035)}.piece-image span{position:absolute;right:12px;bottom:12px;background:var(--cream);padding:5px 12px;font-size:11px}.piece .eyebrow{font-size:9px;margin-bottom:8px;color:#7d6944}.piece h3{margin-bottom:0}.gallery-note{font-size:12px;color:var(--muted);margin:35px 0 0}.story{background:var(--deep);color:white;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.portrait{position:relative}.portrait img{width:100%;display:block;aspect-ratio:1/1.12;object-fit:cover}.portrait span{display:block;background:var(--navy);font-size:9px;letter-spacing:2px;padding:16px 20px}.story-copy p:not(.eyebrow){color:#d5dbe1;max-width:420px}.story-copy h2{font-size:clamp(36px,3.4vw,50px)}.moments{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:25px;align-items:center}.moments>div{padding-right:20px}.moments p:not(.eyebrow){color:var(--muted)}.moments img{width:100%;height:410px;object-fit:cover}.moments img:last-child{margin-top:70px}.consult{background:var(--navy);color:white;display:grid;grid-template-columns:.9fr 1.1fr;gap:10%}.consult>div>p{max-width:350px;color:#d5dbe1}.steps{list-style:none;padding:10px 0;font-size:13px}.steps li{padding:12px 0;border-bottom:1px solid #ffffff20}.steps span{color:var(--gold);margin-right:20px;font-size:11px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:12px;margin-bottom:20px}label span{color:#bac6d1}input,textarea,select{display:block;width:100%;padding:11px;margin-top:8px;border:1px solid #607085;border-radius:0;background:#12263e;color:#fff;font-size:14px}textarea{resize:vertical}textarea::placeholder{color:#a9b7c8}.consent{display:flex;align-items:center;gap:10px}.consent input{width:18px;margin:0;accent-color:var(--gold)}.small{font-size:11px;color:#c3ccd8}.small a{text-decoration:underline}.trap{position:absolute;left:-9999px}.consult .button{width:100%}#form-status:empty{display:none}#form-status{padding:15px;border:1px solid var(--gold);font-size:13px}#download-request{text-decoration:underline;color:var(--gold)}footer{background:var(--deep);color:#c3ccd8;padding:45px 7%;display:grid;grid-template-columns:1fr 1fr;gap:20px;font-size:12px}footer .logo{width:240px}footer p{text-align:right;font-family:Georgia,serif;font-style:italic;font-size:20px}footer div{display:flex;gap:24px}footer small{text-align:right}dialog{border:0;padding:30px;background:var(--cream);color:var(--ink);width:min(900px,92vw);max-height:90vh;overflow:auto}dialog[open]{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}dialog::backdrop{background:#061222d9}dialog>img{width:100%;max-height:65vh;object-fit:contain}#close-dialog{grid-column:1/-1;justify-self:end;background:transparent;border:0;font-size:14px}dialog h2{font-size:35px}[hidden]{display:none!important}@media(min-width:1500px){.hero{min-height:760px}.hero-copy{padding-top:100px}}@media(max-width:900px){header{padding:15px 5%}.logo{width:220px}nav{gap:18px;font-size:11px}.nav-cta{padding:10px}.hero-copy{padding:50px 8%}.hero-media,.hero{min-height:600px}.hero-note{display:block}.hero-note span{display:block;margin-bottom:7px}.section{padding:65px 6%}.moments{grid-template-columns:1fr 1fr}.moments>div{grid-column:1/-1}.moments img:last-child{margin-top:0}.consult{gap:6%}.form-row{grid-template-columns:1fr;gap:0}}@media(max-width:650px){header{flex-wrap:wrap}.logo{width:210px}#menu{display:block;background:transparent;color:var(--gold);border:1px solid #bba46f;padding:7px 12px;font-size:12px}nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding:10px 0}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 7% 32px}.hero h1{font-size:49px}.hero-media{min-height:440px}.hero-note{display:flex;margin-top:25px}.ribbon{gap:15px;letter-spacing:1px;font-size:8px}.ribbon span:last-child,.ribbon span:nth-last-child(2){display:none}.section-heading{display:block}.section{padding:55px 7%}.gallery{grid-template-columns:1fr 1fr;gap:25px 15px}.piece h3{font-size:21px}.piece .eyebrow{letter-spacing:1px}.filters{gap:8px}.filters button{padding:8px 12px}.story,.consult{grid-template-columns:1fr;gap:35px}.portrait{max-width:400px}.moments{gap:15px}.moments img{height:280px}.moments h2{font-size:40px}footer{grid-template-columns:1fr}footer p,footer small{text-align:left}footer div{flex-wrap:wrap}dialog[open]{grid-template-columns:1fr;gap:15px}dialog>img{max-height:45vh}dialog h2{font-size:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.piece img{transition:none}}

/* Original navy composition with restrained typography. */
body{font-family:Arial,Helvetica,sans-serif;font-size:14px}
h1,h2,h3{font-family:'Boston Serif',Baskerville,serif;font-weight:400;letter-spacing:0;line-height:1.16}
h1{font-size:clamp(42px,4.8vw,70px)}h2{font-size:clamp(32px,3.3vw,47px)}
em{font-style:normal;color:inherit}.hero em{color:var(--gold)}
.eyebrow{letter-spacing:1.4px;font-size:10px}.hero-copy{padding-top:75px}
.piece{align-self:start}.piece h3{font-size:23px}.gallery{align-items:start}
.story-copy h2{font-size:clamp(34px,3.2vw,46px)}
.image-caption{font-family:Arial,Helvetica,sans-serif;font-size:12px;font-style:normal;letter-spacing:.5px}
footer p{font-family:'Boston Serif',Baskerville,serif;font-style:normal}
@media(max-width:650px){.hero-copy{padding-top:45px}.hero h1{font-size:44px}.piece h3{font-size:21px}.moments h2{font-size:35px}}
/* Blend the real hero photograph into the navy on each layout axis. */
.hero-media:before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,var(--navy) 0%,rgba(24,44,69,.72) 5%,rgba(24,44,69,.28) 16%,rgba(24,44,69,0) 34%)}
.hero-media:after{inset:0;background:linear-gradient(0deg,var(--navy) 0%,rgba(24,44,69,.7) 10%,rgba(24,44,69,0) 40%)}
.image-caption{z-index:2}#video-toggle{z-index:3}
@media(max-width:650px){.hero-media:before{background:linear-gradient(180deg,var(--navy) 0%,rgba(24,44,69,.78) 5%,rgba(24,44,69,.32) 13%,rgba(24,44,69,0) 26%)}.hero-media:after{background:linear-gradient(0deg,var(--navy) 0%,rgba(24,44,69,.65) 10%,rgba(24,44,69,0) 33%)}}

/* Classical labels and continuous section transitions, desktop and phone. */
.image-caption{font-family:'Boston Serif',Baskerville,serif;font-size:18px;line-height:1.5;letter-spacing:0;font-style:normal}
.filters button{font-family:'Boston Serif',Baskerville,serif;font-size:14px;letter-spacing:0}
header{border-bottom:0}
.collection{background:linear-gradient(to bottom,var(--navy) 0%,var(--cream) 110px);padding-top:160px}
.story{background:linear-gradient(to bottom,var(--cream) 0%,var(--deep) 110px,var(--deep) calc(100% - 110px),var(--cream) 100%);padding-top:165px;padding-bottom:165px}
.consult{background:linear-gradient(to bottom,var(--cream) 0%,var(--navy) 110px);padding-top:165px}
footer{background:linear-gradient(to bottom,var(--navy),var(--deep) 100px)}
@media(max-width:900px){.collection{padding-top:145px}.story{padding-top:150px;padding-bottom:150px}.consult{padding-top:150px}}
@media(max-width:650px){.image-caption{font-size:17px;left:25px;right:20px}.filters button{font-size:13px;padding:9px 13px}.collection{background:linear-gradient(to bottom,var(--navy),var(--cream) 80px);padding-top:115px}.story{background:linear-gradient(to bottom,var(--cream),var(--deep) 80px,var(--deep) calc(100% - 80px),var(--cream));padding-top:115px;padding-bottom:115px}.consult{background:linear-gradient(to bottom,var(--cream),var(--navy) 80px);padding-top:115px}}
/* Continuous navy canvas: avoid muddy navy-to-cream gradient bands. */
body{background:var(--navy);color:var(--cream)}
.collection,.story,.moments,.consult{background:transparent;padding:90px 7%}
main{background:linear-gradient(180deg,#182c45 0%,#182c45 25%,#14263d 50%,#182c45 75%,#15273e 100%)}
.collection .section-heading>p,.gallery-note,.moments p:not(.eyebrow){color:#bcc5cf}
.collection .eyebrow,.moments .eyebrow{color:var(--gold)}
.piece{color:var(--cream)}.piece .eyebrow{color:#cbb78f}
.filters button{color:#dce1e7;border-color:#647083;background:transparent}
.filters button.active{background:var(--gold);border-color:var(--gold);color:var(--deep)}
.filters button:hover{border-color:var(--gold)}
.piece-image span{background:var(--cream);color:var(--ink)}
.story-copy p:not(.eyebrow){color:#c7d0da}
.portrait span{background:transparent;color:#c7b48e;padding-left:0}
footer{background:#15273e}
.hero-media:before{background:linear-gradient(90deg,var(--navy) 0%,rgba(24,44,69,.88) 3%,rgba(24,44,69,.45) 10%,rgba(24,44,69,0) 27%)}
.hero-media:after{background:linear-gradient(0deg,var(--navy) 0%,rgba(24,44,69,.85) 6%,rgba(24,44,69,.32) 19%,rgba(24,44,69,0) 35%)}
@media(max-width:900px){.collection,.story,.moments,.consult{padding:70px 6%}}
@media(max-width:650px){.collection,.story,.moments,.consult{padding:55px 7%}.hero-media:before{background:linear-gradient(180deg,var(--navy) 0%,rgba(24,44,69,.8) 3%,rgba(24,44,69,.3) 9%,rgba(24,44,69,0) 20%)}.hero-media:after{background:linear-gradient(0deg,var(--navy) 0%,rgba(24,44,69,.8) 6%,rgba(24,44,69,.25) 18%,rgba(24,44,69,0) 30%)}}
/* Alternating cream and navy, joined by shallow curves rather than gray fades. */
body{background:var(--cream);color:var(--ink)}
main{background:var(--navy)}
.collection{position:relative;background:var(--cream);color:var(--ink);border-radius:50% 38% 0 0 / 38px 28px 0 0;padding-top:100px}
.collection .section-heading>p,.gallery-note{color:var(--muted)}
.collection .eyebrow{color:#79623e}
.piece{color:var(--ink)}.piece .eyebrow{color:#7d6944}
.filters button{color:var(--ink);border-color:#c7c5bc;background:transparent}
.filters button.active{background:var(--navy);border-color:var(--navy);color:white}
.story{position:relative;background:var(--deep);color:var(--cream);border-radius:0;padding-top:120px;padding-bottom:120px}
.story:before{content:'';position:absolute;top:0;left:0;right:0;height:34px;background:var(--cream);border-radius:0 0 45% 60% / 0 0 100% 100%;pointer-events:none}
.story:after{content:'';position:absolute;bottom:0;left:0;right:0;height:34px;background:var(--cream);border-radius:55% 40% 0 0 / 100% 100% 0 0;pointer-events:none}
.moments{background:var(--cream);color:var(--ink)}
.moments .eyebrow{color:#79623e}.moments p:not(.eyebrow){color:var(--muted)}
.consult{position:relative;background:var(--navy);color:white;padding-top:120px}
.consult:before{content:'';position:absolute;top:0;left:0;right:0;height:34px;background:var(--cream);border-radius:0 0 55% 35% / 0 0 100% 100%;pointer-events:none}
footer{background:var(--navy)}
@media(max-width:900px){.collection{padding-top:90px}.story{padding-top:100px;padding-bottom:100px}.consult{padding-top:100px}}
@media(max-width:650px){.collection{border-radius:50% 38% 0 0 / 20px 16px 0 0;padding-top:70px}.story{padding-top:80px;padding-bottom:80px}.story:before,.story:after,.consult:before{height:20px}.consult{padding-top:80px}}
/* White masthead and stronger, readable typography throughout. */
body,button,input,textarea,select{font-family:'Boston Serif',Baskerville,Georgia,serif}
body{font-size:16px;line-height:1.7}
header{background:#fff;padding:22px 5%;gap:28px}
header .logo{width:290px}
nav{color:var(--navy);font-family:'Boston Serif',Baskerville,Georgia,serif;font-size:18px;font-weight:700;gap:32px;line-height:1.4}
nav a:hover{color:#88662e}
.nav-cta{border:1px solid #bba46f;padding:13px 20px;font-size:17px}
.eyebrow,.hero .eyebrow,.piece .eyebrow{font-family:'Boston Serif',Baskerville,Georgia,serif;font-size:13px;font-weight:700;letter-spacing:.7px}
.button,.text-link{font-family:'Boston Serif',Baskerville,Georgia,serif;font-size:16px;font-weight:700;letter-spacing:0}
.hero-note{font-family:'Boston Serif',Baskerville,Georgia,serif;font-size:13px;letter-spacing:0}
.section-heading>p,.gallery-note,.moments p:not(.eyebrow){font-size:15px}
.filters button{font-size:16px;font-weight:700}
.piece-image span{font-family:'Boston Serif',Baskerville,Georgia,serif;font-size:14px;font-weight:700}
.portrait span{font-family:'Boston Serif',Baskerville,Georgia,serif;font-size:12px;letter-spacing:.7px}
label{font-size:15px;font-weight:700}
input,textarea,select{font-size:16px;font-weight:400}
.small,.consult .small{font-size:13px;line-height:1.65}
footer{font-size:15px}footer small{font-size:13px}
#close-dialog,#video-toggle{font-size:16px}
#form-status{font-size:15px}
@media(max-width:1050px){header{gap:20px;padding-left:4%;padding-right:4%}header .logo{width:240px}nav{font-size:16px;gap:20px}.nav-cta{font-size:15px;padding:11px 14px}.nav-cta span{margin-left:6px}}
@media(max-width:800px){header{flex-wrap:wrap}header .logo{width:250px}#menu{display:block;background:var(--navy);color:white;border:0;padding:10px 18px;font-family:'Boston Serif',Baskerville,Georgia,serif;font-size:17px;font-weight:700}nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:12px 0 0}nav.open{display:flex}nav a{padding:15px 4px;border-bottom:1px solid #ddd8cd;font-size:19px}.nav-cta{border:0;font-size:19px}}
@media(max-width:650px){header{padding:18px 7%}header .logo{width:205px}.hero-note{font-size:12px;gap:16px}.hero-note span{font-size:12px}.eyebrow,.hero .eyebrow,.piece .eyebrow{font-size:12px;letter-spacing:.6px}.filters{gap:10px}.filters button{font-size:15px;padding:10px 13px}.piece-image span{font-size:12px;padding:5px 8px}.section-heading>p,.gallery-note{font-size:14px}.text-link,.button{font-size:15px}.portrait span{font-size:12px}footer div{gap:18px}}
