
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--navy:#14273b;--rose:#b67f78;--cream:#f9f5ef;--paper:#fffdf9;--ink:#273441;--muted:#6c7478}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--paper);line-height:1.7}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,blockquote{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.13}h1{font-size:clamp(3.9rem,8vw,8.8rem);margin:.3em 0}h2{font-size:clamp(2.5rem,5vw,5rem);margin:.22em 0 .5em}h3{font-size:clamp(1.55rem,2.5vw,2.3rem);margin:.3em 0}p{max-width:70ch}.eyebrow{font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;font-weight:700;color:var(--rose)}nav{height:86px;padding:0 5.5%;display:flex;justify-content:space-between;align-items:center;position:absolute;top:0;left:0;width:100%;z-index:20;color:#fff;border-bottom:1px solid #ffffff35}.brand{font-family:'Playfair Display',serif;font-size:1.65rem;line-height:1}.brand small{display:block;font:600 .58rem 'DM Sans',sans-serif;letter-spacing:.15em;margin-top:9px}.navlinks{display:flex;align-items:center;gap:1.4rem}.navlinks a{font-size:.74rem;letter-spacing:.07em}.navlinks a:hover{color:#e6b3aa}.navlinks .outline{border:1px solid #ffffffa0;padding:11px 15px}.menu{display:none;background:transparent;border:1px solid #fff;color:white;padding:8px 12px}.hero{height:min(950px,100svh);min-height:650px;position:relative;background:#15283a;color:white;overflow:hidden;display:flex;align-items:center}.hero video,.hero .poster{position:absolute;width:100%;height:100%;object-fit:cover;inset:0}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#101e2bd9 0%,#13283d76 60%,#15283b33 100%),linear-gradient(0deg,#14273b88,transparent 42%)}.hero-inner{z-index:2;position:relative;padding:120px 8% 60px;max-width:1050px}.hero h1{letter-spacing:-.055em}.hero .sub{font:400 clamp(1.3rem,2.5vw,2.1rem) 'Playfair Display',serif;max-width:700px}.hero .eyebrow{color:#eec4b8}.btn{display:inline-block;border:1px solid currentColor;padding:13px 25px;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin:12px 12px 0 0;transition:.25s}.btn:hover{transform:translateY(-3px);background:#ffffff18}.btn.filled{background:var(--rose);border-color:var(--rose);color:white}.btn.dark{background:var(--navy);border-color:var(--navy);color:white}.scrollcue{position:absolute;z-index:3;bottom:28px;left:8%;letter-spacing:.2em;font-size:.65rem;text-transform:uppercase}.section{padding:clamp(80px,10vw,145px) 8%}.section.cream{background:var(--cream)}.section.navy{background:var(--navy);color:white}.intro{font:400 clamp(1.6rem,2.8vw,2.8rem)/1.45 'Playfair Display',serif;max-width:980px}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,7vw,120px);align-items:center}.split img{width:100%;height:600px;object-fit:cover}.portrait{object-position:center 20%}.split p{font-size:1.02rem;color:var(--muted)}.navy p{color:#d4dbe1}.photo-band{min-height:560px;background-size:cover;background-position:center;display:flex;align-items:end;position:relative;color:#fff;padding:90px 8%}.photo-band:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0e243bdc,transparent 85%)}.photo-band>div{position:relative;max-width:830px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:50px}.card{background:#fff;overflow:hidden}.card img{width:100%;height:320px;object-fit:cover;transition:transform .7s}.card:hover img{transform:scale(1.04)}.card .body{padding:30px}.card p{font-size:.93rem;color:var(--muted)}.card a{font-size:.75rem;letter-spacing:.1em;font-weight:700;text-transform:uppercase;color:#8d5750}.quote{font:400 clamp(1.6rem,3vw,3rem)/1.5 'Playfair Display',serif;max-width:980px;margin:30px auto;text-align:center}.center{text-align:center}.center p{margin-left:auto;margin-right:auto}.pagehero{height:540px;display:flex;align-items:end;color:white;padding:110px 8% 60px;background-position:center;background-size:cover;position:relative}.pagehero:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#14273be9,#14273b45)}.pagehero>div{position:relative}.pagehero h1{font-size:clamp(3.7rem,7vw,7rem);margin:10px 0}.pagehero p{font-size:1.2rem;max-width:650px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:50px}.step{border-top:1px solid #d9c9c3;padding-top:22px}.step b{font-family:'Playfair Display',serif;font-size:2.8rem;color:var(--rose);font-weight:400}.step p{color:var(--muted)}.feature-list{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.feature-list article{padding:28px;border:1px solid #dcd4cc}.feature-list p{color:var(--muted)}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:35px}.video-grid iframe{width:100%;aspect-ratio:16/9;border:0}.community{display:grid;grid-template-columns:1fr 1.3fr;gap:60px;align-items:center;margin:60px 0}.community:nth-child(even){grid-template-columns:1.3fr 1fr}.community:nth-child(even) img{order:2}.community img{height:390px;width:100%;object-fit:cover}.contactpanel{background:#eadbd3;padding:75px 8%;text-align:center}.contactpanel h2{max-width:850px;margin:20px auto}.footer{background:#0d2031;color:#e2e8ed;padding:75px 8% 35px}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:55px}.footer a{display:block;font-size:.85rem;margin:9px 0}.footer small{font-size:.75rem;color:#b9c5ce}.form{display:grid;gap:13px;max-width:670px}.form label{font-size:.8rem;font-weight:700}.form input,.form select,.form textarea{font:inherit;padding:14px;border:1px solid #cfc7bf;width:100%;background:white}.form textarea{min-height:140px}.form button{cursor:pointer;text-align:left;width:max-content}.notice{font-size:.79rem;color:var(--muted)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .85s,transform .85s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){nav{height:76px}.menu{display:block}.navlinks{display:none;position:absolute;top:76px;left:0;right:0;background:#14273b;padding:24px 7%;flex-direction:column;align-items:stretch}.navlinks.open{display:flex}.hero{min-height:660px}.split,.community,.community:nth-child(even){grid-template-columns:1fr}.community:nth-child(even) img{order:0}.cards,.steps{grid-template-columns:1fr 1fr}.split img{height:460px}.footergrid{grid-template-columns:1fr 1fr}.feature-list{grid-template-columns:1fr}}
@media(max-width:600px){.section{padding:75px 6%}.hero-inner{padding-left:6%;padding-right:6%}.hero h1{font-size:4.7rem}.cards,.steps,.video-grid,.footergrid{grid-template-columns:1fr}.pagehero{padding:100px 6% 45px;height:460px}.pagehero h1{font-size:3.8rem}.photo-band{padding:60px 6%;min-height:460px}.card img{height:280px}.split img{height:400px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Cinematic film gallery */
.film-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;margin-top:45px}
.film-card{background:#fff;box-shadow:0 16px 45px #14273b0c;overflow:hidden}
.film-frame{aspect-ratio:16/9;background:#14273b}
.film-frame iframe{width:100%;height:100%;border:0;display:block}
.film-info{padding:26px 30px 30px}
.film-info h3{margin:10px 0 16px}
.film-info a{font-size:.75rem;letter-spacing:.1em;font-weight:700;text-transform:uppercase;color:#8d5750}
@media(max-width:700px){.film-gallery{grid-template-columns:1fr;gap:24px}}
