:root{--blue:#123b78;--blue2:#0a2857;--cream:#f5f0e7;--ink:#17202a;--white:#fff;--gold:#d7b56d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Montserrat,Arial,sans-serif}header{position:fixed;z-index:20;top:0;left:0;right:0;height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;color:#fff;background:linear-gradient(#07152bbf,transparent)}.brand{color:inherit;text-decoration:none;display:flex;flex-direction:column}.brand span,.contact-art span{font:italic 600 38px 'Cormorant Garamond',serif;line-height:.8}.brand small,.contact-art small{font-size:8px;letter-spacing:.24em;margin-top:9px}nav{display:flex;gap:28px}nav a{color:#fff;text-decoration:none;font-size:12px;font-weight:600;letter-spacing:.08em}.menu{display:none;background:none;border:0;color:#fff;font-size:28px}.hero{height:100svh;min-height:680px;position:relative;color:#fff;display:flex;align-items:center;padding:100px 8vw 40px;overflow:hidden}.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,#07152bd9 0%,#07152b7d 48%,#07152b1f 100%),url('../images/foto-13.jpg') center/cover no-repeat;transform:scale(1.03)}.hero-copy{position:relative;max-width:800px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.28em;color:var(--gold)}h1,h2{font-family:'Cormorant Garamond',serif;font-weight:600;margin:.2em 0;line-height:.9}h1{font-size:clamp(62px,7.4vw,116px)}h1 em,h2 em{font-weight:500}.hero-copy>p:not(.eyebrow){font-size:17px;line-height:1.7;max-width:580px}.actions{display:flex;gap:12px;margin-top:34px}.btn{display:inline-block;padding:15px 22px;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.08em;border:1px solid transparent}.primary{background:var(--blue);color:#fff}.ghost{border-color:#ffffff88;color:#fff}.scroll{position:absolute;bottom:35px;right:5vw;font-size:9px;letter-spacing:.25em}.intro{padding:120px 8vw;text-align:center;max-width:1050px;margin:auto}.intro h2,.section-head h2,.contact h2{font-size:clamp(50px,6vw,82px)}.intro>p:last-child{max-width:760px;margin:30px auto 0;line-height:1.9;color:#5c6267}.specials,.gallery{padding:110px 7vw;background:#fff}.section-head{margin-bottom:55px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.photo{height:370px;background-size:cover;background-position:center}.p1{background-image:url('../images/foto-14.jpeg')}.p2{background-image:url('../images/foto-08.jpg')}.p3{background-image:url('../images/foto-06.jpg')}.p4{background-image:url('../images/foto-07.webp')}.cards article>span{font-size:9px;color:#999;display:block;margin-top:20px}.cards h3{font:600 30px 'Cormorant Garamond',serif;margin:8px 0}.cards p{font-size:13px;line-height:1.7;color:#666}.quote{min-height:560px;display:grid;place-items:center;text-align:center;color:#fff;background:linear-gradient(#09285bb8,#09285bb8),url('../images/foto-12.jpg') center/cover fixed}.quote p{font-size:10px;letter-spacing:.3em}.quote h2{font-size:clamp(56px,7vw,96px)}.gallery{background:var(--cream)}.grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;grid-template-rows:330px 330px;gap:16px}.g{background-size:cover;background-position:center}.g1{grid-row:1/3;background-image:url('../images/foto-15.jpg')}.g2{grid-column:2/4;background-image:url('../images/foto-03.jpg')}.g3{background-image:url('../images/foto-05.jpeg')}.g4{background-image:url('../images/foto-11.webp')}.contact{display:grid;grid-template-columns:1fr 1fr;min-height:620px;background:var(--blue2);color:#fff}.contact>div:first-child{padding:100px 8vw}.contact a:not(.btn){color:#fff;line-height:2}.address{line-height:1.8;margin:30px 0}.note{font-size:10px;opacity:.55;margin-top:20px}.contact-art{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:linear-gradient(#123b78d9,#123b78d9),url('../images/foto-04.jpg') center/cover}.contact-art span{font-size:90px}footer{padding:55px 7vw;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;background:#07152b;color:#fff}footer p{font-size:10px;line-height:1.8;opacity:.65}footer p:last-child{text-align:right}@media(max-width:850px){header{height:74px;padding:0 22px}.brand span{font-size:31px}nav{display:none;position:absolute;top:70px;left:0;right:0;padding:25px;background:#07152b;flex-direction:column}nav.open{display:flex}.menu{display:block}.hero{padding:100px 24px 30px;min-height:720px}.hero-bg{background-position:58% center}.hero-copy>p:not(.eyebrow){font-size:14px}.actions{flex-direction:column;align-items:flex-start}.intro,.specials,.gallery{padding:80px 24px}.cards{grid-template-columns:1fr 1fr}.photo{height:310px}.grid{grid-template-columns:1fr 1fr;grid-template-rows:380px 250px 250px}.g1{grid-column:1/3;grid-row:auto}.g2{grid-column:auto}.quote{background-attachment:scroll}.contact{grid-template-columns:1fr}.contact>div:first-child{padding:80px 24px}.contact-art{min-height:420px}.contact-art span{font-size:68px}footer{grid-template-columns:1fr;gap:25px}footer p:last-child{text-align:left}}@media(max-width:520px){.cards{grid-template-columns:1fr}.photo{height:400px}.grid{display:flex;flex-direction:column}.g{height:320px}h1{font-size:59px}.intro h2,.section-head h2,.contact h2{font-size:48px}}

/* Accessible final typography and local photography */
html{scroll-padding-top:100px}body{font-size:16px}header{background:#07152bea;backdrop-filter:blur(10px)}nav a,.btn{font-size:14px}.brand small{font-size:12px;letter-spacing:.15em}.eyebrow{font-size:14px;letter-spacing:.18em}h1,h2{line-height:1.04}.cards p{font-size:16px}.cards article>span{font-size:14px}.quote p{font-size:14px}.scroll{font-size:12px}.intro{background:#fff;max-width:none}.intro>p:last-child{max-width:760px}.gallery{background:#f6f8fb}.contact-art{background:linear-gradient(#09285b40,#09285b40),url('../images/foto-15.jpg') center/cover}.contact-art span,.contact-art small{display:none}.contact .primary{background:#fff;color:var(--blue2)}footer p{font-size:14px}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #d7b56d;outline-offset:6px}.brand-logo{width:58px;height:58px;object-fit:contain;float:left;margin-right:14px;background:#fff;border-radius:50%}.brand.with-logo{flex-direction:row;align-items:center}.brand-text{display:flex;flex-direction:column}.grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:none;gap:18px}.gallery-item{padding:0;border:0;background:none;cursor:zoom-in;overflow:hidden;aspect-ratio:4/5}.gallery-item:nth-child(3n){aspect-ratio:1/1}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.gallery-item:hover img{transform:scale(1.04)}dialog{border:0;padding:0;background:#07152b;max-width:94vw;max-height:94svh;color:#fff}dialog::backdrop{background:#000d}dialog img{display:block;max-width:90vw;max-height:84svh;object-fit:contain;margin:auto}dialog .close{display:block;margin:8px 12px 8px auto;padding:10px 18px;background:#fff;color:#07152b;border:0;font-size:16px;cursor:pointer}.hero-bg{background-position:center}.hero{min-height:700px}.hero-copy{max-width:860px}.photo{height:330px}.quote{background-attachment:scroll}
@media(max-width:850px){.grid{grid-template-columns:repeat(3,1fr)}.hero-copy>p:not(.eyebrow){font-size:16px}.hero{min-height:760px}.hero-bg{background-position:65% center}nav a{padding:8px 0}.brand span{font-size:30px}.brand-logo{width:45px;height:45px;margin-right:10px}.brand small{font-size:10px}.contact-art{min-height:480px}}
@media(max-width:520px){.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.gallery-item:nth-child(3n){aspect-ratio:4/5}h1{font-size:clamp(42px,11.8vw,62px)}.hero{padding:110px 24px 60px;height:auto;min-height:90svh}.intro h2,.section-head h2,.contact h2{font-size:46px}.photo{height:350px}.btn{line-height:1.5;padding:14px 18px}.quote{min-height:420px;padding:30px 24px}.quote h2{font-size:48px}.contact-art{min-height:390px}.scroll{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Conservative display grading for original photographs containing signs */
.gallery-item:nth-child(1) img,.gallery-item:nth-child(4) img,.gallery-item:nth-child(9) img,.gallery-item:nth-child(12) img,.gallery-item:nth-child(13) img,.gallery-item:nth-child(15) img{filter:brightness(1.08) contrast(1.03) saturate(1.05)}
