:root{--ink:#17343d;--muted:#536568;--paper:#faf9f5;--wash:#eeeee7;--gold:#a07a3f;--line:#d8ddd6;--deep:#122e37;--white:#fff;--serif:Georgia,'Times New Roman',serif}


*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.7 Arial,Helvetica,sans-serif}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(45px,5vw,76px)}h2{font-size:clamp(33px,3.6vw,52px)}h3{font-size:27px}p{color:var(--muted)}a{color:inherit;text-underline-offset:6px}button,input,select,textarea{font:inherit}button,summary{cursor:pointer}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%}[hidden]{display:none!important}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #c19752;outline-offset:5px}::selection{background:#dfc79e;color:var(--ink)}.wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}.eyebrow{display:block;font:600 11px/1.5 Arial,sans-serif;text-transform:uppercase;letter-spacing:.18em;color:var(--gold);margin-bottom:18px}.button{display:inline-flex;justify-content:center;align-items:center;gap:30px;border:1px solid var(--ink);background:var(--ink);color:white;padding:15px 23px;text-decoration:none;font:600 14px/1.5 Arial,sans-serif;transition:background .2s,translate .2s}.button:after{content:'';font-size:19px;font-weight:400}.button:hover{background:#2c535d;translate:0 -2px}.button.light{background:var(--paper);border-color:var(--paper);color:var(--ink)}.button.outline{background:transparent;color:var(--ink)}.text-link{display:inline-block;font:600 14px/1.5 Arial,sans-serif;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:6px}.text-link:after{content:'';margin-left:14px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 28px;margin-top:30px}.skip{position:fixed;top:-100px;left:20px;background:white;padding:12px;z-index:100}.skip:focus{top:12px}


header{position:sticky;top:0;z-index:30;background:#faf9f5f5;border-bottom:1px solid #17343d10;backdrop-filter:blur(12px)}.header{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}.brand img{height:47px;width:41px;object-fit:contain;background:#17343d;padding:3px}.brand span{font:17px/1.25 var(--serif);letter-spacing:.02em}.brand small{display:block;margin-top:5px;font:9px/1.4 Arial,sans-serif;letter-spacing:.15em}.header nav{display:flex;align-items:center;gap:25px}.header nav a{font-size:13px;text-decoration:none;white-space:nowrap;padding:9px 0;border-bottom:1px solid transparent}.header nav a[aria-current]{border-color:var(--gold)}.header nav .nav-contact{padding:11px 18px;border:1px solid var(--ink)}.header nav .nav-contact:hover{background:var(--ink);color:white}.menu-toggle{border:1px solid var(--line);padding:10px 12px;background:transparent;font-size:13px;color:var(--ink)}


.hero{min-height:620px;height:min(720px,calc(100svh - 88px));position:relative;isolation:isolate;overflow:hidden;background:var(--deep)}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 48%;z-index:-2}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b2529bc,transparent 84%),linear-gradient(0deg,#0b252bc9,transparent 70%);z-index:-1}.hero-content{height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding-block:75px;color:white}.hero .eyebrow{color:#e4c799}.hero h1{font-size:clamp(52px,5.7vw,85px);max-width:780px;line-height:1.04}.hero h1 em{font-weight:400;color:#f0ddba}.hero p{color:#f4f2ea;max-width:480px;margin-top:22px;font-size:17px;line-height:1.7}.hero .text-link{color:white;border-color:#c0ab83}.hero .actions{margin-top:26px}.hero-foot{position:absolute;right:48px;bottom:35px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#f5ebd8;writing-mode:vertical-rl}.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center;padding-block:90px}.intro p{max-width:530px}.intro .text-link{margin-top:24px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:35px}.section-heading p{max-width:410px}.section-heading h2{max-width:650px}.home-links{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding-bottom:90px}.home-links>a{text-decoration:none}.home-links .image-frame{overflow:hidden;background:var(--wash)}.home-links img{width:100%;height:280px;object-fit:cover;transition:scale .6s}.home-links>a:hover img{scale:1.025}.home-links>a>div:last-child{padding:24px 0 20px;border-bottom:1px solid var(--line)}.home-links h2{font-size:31px}.home-links p{font-size:15px;margin-top:14px;max-width:330px}.home-links .eyebrow{margin-bottom:10px}.home-links .text-link{margin-top:20px}.featured-story{display:grid;grid-template-columns:1.3fr 1fr;background:var(--wash);align-items:center}.featured-story>figure{margin:0;height:100%;min-height:530px}.featured-story img{width:100%;height:100%;object-fit:cover}.featured-story .feature-copy{padding:65px 60px}.featured-story p{margin-top:25px;max-width:470px}.featured-story .text-link{margin-top:25px}.story-note{font-size:12px!important}.experience-band{padding:85px 0;background:var(--deep);color:var(--paper)}.experience-band .eyebrow{color:#d6b981}.experience-band .section-heading p{color:#bfcfce}.experience-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.experience-steps article{border-top:1px solid #60767a;padding-top:25px}.step-number{font:12px Arial;color:#d6b981;display:block;margin-bottom:27px}.experience-steps h3{font-size:29px;letter-spacing:-.02em}.experience-steps p{color:#c2d0ce;font-size:16px;margin-top:17px}.experience-band .text-link{margin-top:40px;color:var(--paper)}.beach-band{position:relative;isolation:isolate;padding:85px 0;overflow:hidden;background:var(--deep);color:white}.beach-band>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.beach-band:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#102e3aee,#102e3a85);z-index:-1}.beach-band h2{max-width:770px}.beach-band p{color:#e1e9e6;max-width:580px;margin-top:20px}.beach-band .button{margin-top:28px;background:var(--paper);color:var(--ink);border-color:var(--paper)}


.page-heading{padding-block:65px 55px}.page-heading h1{max-width:1000px}.page-heading p{max-width:700px;margin-top:24px}.page-heading .eyebrow{margin-bottom:24px}.page-heading .heading-aside{max-width:450px}.heading-row{display:flex;gap:70px;justify-content:space-between;align-items:end}.heading-row h1{max-width:780px}.heading-row p{margin:0}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 40px;padding-bottom:70px}.service-card{border-bottom:1px solid var(--line)}.service-card>img{width:100%;height:360px;object-fit:contain;background:#e9ede7}.service-card>div{padding:28px 0 32px}.service-card h2{font-size:36px;max-width:520px}.service-card p{font-size:16px;margin-top:16px;max-width:530px}.service-card .text-link{margin-top:24px}.service-card details{border-top:1px solid var(--line);margin-top:22px;padding-top:18px;font-size:15px}.service-card summary{font-weight:600}.service-card li{margin-block:6px}.combo{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding-block:70px}.combo p{max-width:520px}.note{font-size:13px;line-height:1.7;color:var(--muted);margin-top:20px}


.journey-opening{display:grid;grid-template-columns:1.1fr .8fr;gap:85px;align-items:center;padding-block:65px}.journey-opening h1{font-size:clamp(43px,4.4vw,68px)}.journey-opening p{margin-top:25px;max-width:630px}.journey-opening figure{position:relative}.journey-opening img{height:435px;width:100%;object-fit:cover}.journey-opening figcaption{font-size:12px;padding-top:12px}.journey-plan{padding-block:55px 80px}.stage{border-top:1px solid var(--line)}.stage:last-of-type{border-bottom:1px solid var(--line)}.stage summary{list-style:none;display:grid;grid-template-columns:180px 1fr 30px;gap:35px;padding:26px 0;align-items:center;font:29px/1.3 var(--serif)}.stage summary::-webkit-details-marker{display:none}.stage-label{font:600 12px/1.6 Arial,sans-serif;color:var(--gold);text-transform:uppercase;letter-spacing:.08em}.stage-number{margin-right:14px;opacity:.7}.expand{text-align:center;font:26px Arial}.stage[open] .expand{transform:rotate(45deg)}.stage-body{display:grid;grid-template-columns:1fr 1fr;gap:24px 45px;padding:0 40px 32px 215px}.stage-body>p{grid-column:1/-1}.stage-body h3{font:600 13px/1.5 Arial;margin-bottom:10px}.stage-body p{font-size:16px}.journey-stories{padding-block:65px 80px}.story-section{background:var(--wash)}.tabs,.filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;border-block:1px solid var(--line);padding-block:18px;margin-bottom:32px}.tabs button,.filters button,.secondary{border:1px solid #bdc9c8;background:transparent;padding:11px 17px;color:var(--ink);font-size:13px}.tabs [aria-selected=true],.filters [aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.sequence{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.sequence img{width:100%;height:300px;object-fit:contain;background:#e4e8e3}.sequence figcaption{font-size:14px;padding-top:14px}.journey-stories .text-link{margin-top:27px}


.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 38px;padding-bottom:65px}.project-card>a{display:block;text-decoration:none}.project-card img{width:100%;height:360px;object-fit:contain;background:#e8ece6}.card-copy{padding-top:25px}.card-copy h2{font-size:35px}.card-copy .eyebrow{margin-bottom:11px}.card-copy p{margin-top:15px;font-size:16px;max-width:510px}.card-copy .text-link{margin-top:20px}.project-card:hover h2{color:#876637}#project-count{margin-left:auto;font-size:12px;color:var(--muted)}.detail-gallery{padding-block:65px 75px;border-top:1px solid var(--line)}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 24px}.detail-grid img{width:100%;height:270px;object-fit:contain;background:#e8ece6}.detail-grid figcaption{font-size:13px;margin-top:12px}.project-heading{padding-block:40px 45px}.project-heading>a{margin-bottom:35px}.project-heading .eyebrow{margin-bottom:17px}.project-heading h1{max-width:1050px}.project-intro{display:grid;grid-template-columns:2fr 1fr;gap:70px;align-items:end;margin-top:23px}.project-intro p{max-width:730px}.project-intro>span{font-size:12px;text-align:right;color:var(--muted)}.project-feature{margin-bottom:50px}.project-feature img{width:100%;height:min(62vw,650px);object-fit:contain;background:#e9ede7}.project-feature figcaption{display:flex;justify-content:space-between;padding-top:14px;font-size:13px}.project-context{display:grid;grid-template-columns:1fr 2fr;gap:60px;border-block:1px solid var(--line);padding-block:36px;margin-bottom:48px}.project-context h2{font-size:32px}.project-context p{max-width:730px}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px}.story-grid img{width:100%;height:380px;object-fit:contain;background:#e9ede7}.story-grid figcaption{font-size:14px;margin-top:12px}.project-next{display:flex;justify-content:space-between;gap:35px;align-items:center;border-top:1px solid var(--line);margin-top:55px;padding-block:50px 65px}.project-next h2{font-size:35px;max-width:500px}.project-next .actions{margin-top:0}.comparison{margin-block:30px 60px;padding:35px;background:var(--wash)}.comparison .section-heading{margin-bottom:20px}.comparison h2{font-size:35px}.comparison-controls{display:flex;gap:8px}.comparison-controls button{background:transparent;border:1px solid #b4c1bd;padding:10px 22px;font-size:14px;color:var(--ink)}.comparison-controls button[aria-pressed=true]{background:var(--ink);color:white}.comparison img{height:460px;width:100%;object-fit:contain}.comparison figcaption{padding-top:13px;font-size:13px}


.about-layout{display:grid;grid-template-columns:1.05fr .9fr;gap:85px;align-items:center;padding-block:65px 80px}.about-layout h1{font-size:clamp(43px,4.7vw,70px)}.about-layout p{margin-top:23px}.about-layout .lead{font-size:21px;line-height:1.6;color:var(--ink)}.about-layout .button{margin-top:27px}.about-layout>figure>img{width:100%;height:590px;object-fit:cover}.about-layout figcaption{font-size:12px;margin-top:12px}.about-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding-block:32px;border-block:1px solid var(--line);margin-bottom:65px}.about-facts span{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}.about-facts p{color:var(--ink);font:25px/1.3 var(--serif);margin-top:10px}.conversation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding-block:20px 70px}.conversation-grid p{font-size:16px;margin-top:18px}.contact-layout{display:grid;grid-template-columns:.85fr 1.2fr;gap:100px;padding-block:10px 80px}.contact-layout h2{font-size:35px}.contact-layout p{margin-top:22px}.contact-direct{margin-top:25px}.contact-direct>a{display:block;margin-bottom:12px;font-size:20px}.contact-direct address{font-style:normal;font-size:15px;color:var(--muted);margin-top:24px}.contact-aside{border-top:1px solid var(--line);padding-top:26px;margin-top:34px}.contact-aside h3{font-size:27px}.contact-aside ul{padding-left:19px;font-size:15px;color:var(--muted);line-height:1.9}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}form label{display:block;font-size:13px;font-weight:600;margin-bottom:20px}form small{font-weight:400}input,select,textarea{display:block;width:100%;margin-top:8px;padding:13px;border:1px solid #bec9c6;background:#fff;color:var(--ink);border-radius:0;font-size:16px}textarea{resize:vertical}.contact-layout form{padding:35px;background:var(--wash);border-top:2px solid var(--gold)}form .note{margin-top:15px}#draft-panel{border-top:1px solid #b9c5c0;margin-top:28px;padding-top:25px}#draft-panel h3{font-size:26px}#draft-panel .button,#copy-draft{margin-top:16px}#draft-status{font-size:13px}.contact-layout #draft-status{margin-top:14px}.form-intro{margin-bottom:25px}.form-intro p{margin-top:12px;font-size:15px}


footer{background:var(--deep);color:var(--paper)}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:40px;padding-block:45px}.footer-brand{font:26px var(--serif);text-decoration:none}.footer-top p{font-size:13px;color:#bccac7;margin-top:11px}.footer-top>div:nth-child(2)>a{display:block;font-size:14px;margin-block:4px}.footer-top>.text-link{color:var(--paper)}.footer-small{border-top:1px solid #486065;display:flex;align-items:start;justify-content:space-between;gap:25px;padding-block:20px;font-size:11px;color:#bccac7}.footer-small details{max-width:520px}.footer-small p{font-size:12px;color:#bccac7;margin-top:10px}.motion-control{border:1px solid #607577;background:transparent;padding:5px 10px;color:var(--paper);white-space:nowrap;font-size:11px}.viewer-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:9px 0;font-size:13px}.viewer-bar p{color:var(--paper);font-size:15px;text-align:center}.viewer-bar button{color:var(--paper);background:transparent;border:1px solid #839a9d;padding:9px 16px;font-size:13px}dialog{padding:20px;border:0;background:var(--deep);color:var(--paper);width:min(1200px,94vw);max-width:94vw;max-height:94vh}dialog::backdrop{background:#071c24ed}dialog>img{width:100%;height:70vh;object-fit:contain}body:has(dialog[open]){overflow:hidden}.text-only-link{font:inherit;background:none;border:0;padding:0;color:inherit;text-decoration:underline;text-underline-offset:5px}


@media(max-width:1180px){.header nav{gap:16px}.header nav a{font-size:12px}.brand span{font-size:15px}.wrap{width:calc(100% - 64px)}.intro,.journey-opening,.about-layout,.contact-layout{gap:50px}.featured-story .feature-copy{padding:40px}.home-links img{height:230px}.stage-body{padding-left:0}.hero-foot{right:20px}}


@media(max-width:880px){.header{min-height:78px;flex-wrap:wrap;padding-block:13px;gap:12px}.header nav{flex-basis:100%;display:grid;grid-template-columns:1fr 1fr;gap:0 24px;border-top:1px solid var(--line);padding-block:10px 3px}.header nav a{font-size:15px;padding:12px 0}.header nav .nav-contact{padding:12px}.intro,.journey-opening,.about-layout,.contact-layout{grid-template-columns:1fr;gap:35px}.intro{padding-block:65px}.intro p{max-width:650px}.home-links{gap:20px}.home-links h2{font-size:27px}.home-links img{height:190px}.featured-story{grid-template-columns:1fr 1fr}.featured-story>figure{min-height:420px}.featured-story .feature-copy{padding:30px}.featured-story h2{font-size:36px}.section-heading,.heading-row{display:block}.section-heading p,.heading-row p{margin-top:22px}.experience-steps{gap:25px}.journey-opening figure{max-width:680px}.journey-opening img{height:390px;object-fit:contain;background:var(--wash)}.stage summary{grid-template-columns:140px 1fr 25px;gap:20px;font-size:26px}.sequence img{height:240px}.service-card>img,.project-card img{height:280px}.about-layout>figure>img{height:500px;object-fit:contain;background:var(--wash)}.contact-layout{max-width:730px}.contact-layout form{padding:28px}.footer-top{flex-wrap:wrap}.project-next{align-items:start;flex-direction:column}.detail-grid{grid-template-columns:1fr 1fr}.project-intro{grid-template-columns:1fr;gap:18px}.project-intro>span{text-align:left}}


@media(max-width:600px){body{font-size:16px}.wrap{width:calc(100% - 40px)}h1{font-size:44px}h2{font-size:35px}.brand span{font-size:14px}.brand small{font-size:8px;letter-spacing:.09em}.brand img{width:34px;height:41px}.brand{gap:9px}.header{min-height:72px}.hero{height:650px;min-height:580px;max-height:calc(100svh - 72px)}.hero-content{padding-block:40px}.hero h1{font-size:48px}.hero>img{object-position:58% center}.hero:after{background:linear-gradient(0deg,#0b252bef,transparent 100%)}.hero p{font-size:15px;max-width:320px}.hero .eyebrow{font-size:10px}.hero-foot{display:none}.actions{gap:20px}.button{padding:14px 18px}.intro{padding-block:50px;gap:24px}.home-links{grid-template-columns:1fr;gap:35px;padding-bottom:55px}.home-links img{height:270px}.home-links>a>div:last-child{padding-top:20px}.home-links h2{font-size:32px}.home-links p{max-width:none}.featured-story{grid-template-columns:1fr}.featured-story>figure{min-height:0;height:330px}.featured-story img{object-fit:contain}.featured-story .feature-copy{padding:36px 20px 45px}.experience-band{padding-block:55px}.experience-steps{grid-template-columns:1fr;gap:30px;margin-top:32px}.step-number{margin-bottom:15px}.experience-steps h3{font-size:29px}.experience-steps p{margin-top:12px}.beach-band{padding-block:55px}.page-heading{padding-block:42px 35px}.page-heading .eyebrow{margin-bottom:17px}.service-grid,.projects-grid{grid-template-columns:1fr;gap:36px}.service-card>img,.project-card img{height:auto;aspect-ratio:4/3}.service-card h2,.card-copy h2{font-size:32px}.combo{grid-template-columns:1fr;gap:22px;padding-block:45px}.journey-opening{padding-block:40px;gap:30px}.journey-opening h1{font-size:43px}.journey-opening img{height:280px}.journey-plan{padding-block:30px 45px}.stage summary{grid-template-columns:1fr 24px;gap:12px;font-size:26px;padding-block:23px}.stage-label{grid-column:1/-1}.stage-body{grid-template-columns:1fr;padding:0 0 28px;gap:20px}.stage-body>p{grid-column:auto}.journey-stories{padding-block:45px}.tabs,.filters{gap:8px;padding-block:15px}.tabs button,.filters button{font-size:12px;padding:10px 12px}.sequence{grid-template-columns:1fr;gap:25px}.sequence img{height:auto;max-height:420px}.section-heading{margin-bottom:24px}.section-heading h2{font-size:33px}.detail-gallery{padding-block:45px}.detail-grid{gap:26px 14px}.detail-grid img{height:160px}.detail-grid figcaption{font-size:12px}.project-heading{padding-block:28px 30px}.project-heading>a{margin-bottom:27px}.project-heading h1{font-size:43px}.project-feature{margin-bottom:30px}.project-feature img{height:auto;max-height:520px}.project-feature figcaption{display:block}.project-feature figcaption span:last-child{display:none}.project-context{grid-template-columns:1fr;gap:18px;padding-block:25px;margin-bottom:30px}.story-grid{grid-template-columns:1fr;gap:28px}.story-grid img{height:auto;max-height:520px}.project-next{margin-top:35px;padding-block:35px 45px}.comparison{padding:20px;margin-bottom:35px}.comparison .section-heading{display:block}.comparison-controls{margin-top:20px}.comparison img{height:290px}.about-layout{padding-block:40px 50px}.about-layout>figure>img{height:370px}.about-facts{grid-template-columns:1fr;gap:22px;margin-bottom:40px}.about-facts p{font-size:26px}.conversation-grid{grid-template-columns:1fr;gap:30px;padding-bottom:45px}.contact-layout{gap:35px;padding-bottom:45px}.contact-layout form{padding:24px 18px}.form-row{grid-template-columns:1fr;gap:0}.contact-direct>a{font-size:18px}.contact-aside{margin-top:26px}.footer-top{display:block;padding-block:32px}.footer-top>div:nth-child(2){margin-block:25px}.footer-small{flex-wrap:wrap;gap:18px}.footer-small details{order:3;flex-basis:100%}.viewer-bar{gap:8px}.viewer-bar p{font-size:12px}.viewer-bar button{padding:9px}dialog{padding:12px}dialog>img{height:61vh}}


@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.button:hover{translate:none}.home-links>a:hover img{scale:1}}


@media print{header,footer,dialog,.actions,.comparison-controls{display:none}.wrap{width:100%}.hero{height:400px;min-height:0}.story-grid{display:block}.story-grid figure{break-inside:avoid;margin-bottom:25px}}




/* Coastal Dream — an alternate composition, retaining the original site behavior. */

:root{--ink:#123650;--muted:#344f60;--paper:#fffaf2;--wash:#d5e5dd;--gold:#81512d;--line:#abbec3;--deep:#122f4b;--peach:#f3ceb5;--sea:#cae0d7;--blue:#dceaf0}

body{background:var(--paper);font-size:18px}h1 em,h2 em{font-weight:400;color:#39716f}p{line-height:1.75}.eyebrow{font-size:12px;letter-spacing:.15em}.text-link{font-size:15px}.button{border-radius:2px;font-size:15px;padding:17px 24px}.button.sunset{color:#153650;background:var(--peach);border-color:var(--peach)}.button.sunset:hover{background:#ffe0c8}.button:focus-visible,.text-link:focus-visible{outline-color:#db9e61}

header{background:#102f49f7;border-bottom:1px solid #ffffff24;color:#fff6e8}.header{min-height:88px}.brand img{background:transparent}.brand span{font-size:17px}.brand small{color:#d6e6e7}.header nav a{font-size:14px}.header nav a[aria-current]{border-color:#efc99b}.header nav .nav-contact{background:var(--peach);border-color:var(--peach);color:var(--ink);padding:12px 18px}.menu-toggle{color:white;border-color:#849cad}

.dream-hero{height:760px;min-height:620px;position:relative;isolation:isolate;overflow:hidden;background:#183452;color:#fff8ee}.dream-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;z-index:-2;animation:shore-drift 24s ease-in-out infinite alternate}.dream-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#142c46ce 0%,#142c4673 48%,#142c4610 100%),linear-gradient(0deg,#102f4966,transparent 65%);z-index:-1}.dream-hero-copy{height:100%;display:flex;flex-direction:column;justify-content:center;padding-bottom:65px}.dream-hero .eyebrow{color:#ffe0b9}.dream-hero h1{font-size:clamp(80px,8.8vw,128px);line-height:.92;letter-spacing:-.05em;text-shadow:0 3px 22px #10293c25}.dream-hero h1 em{color:#ffd3b7}.dream-hero p{font-size:19px;color:#fff9f1;max-width:540px;margin-top:30px}.dream-hero .text-link{border-color:#f7d5ad}.hero-postcard{position:absolute;bottom:55px;right:5.5%;padding:24px 32px;border:1px solid #fff2d68c;backdrop-filter:blur(8px);background:#102e4833;transform:rotate(3deg);text-align:center}.hero-postcard span{font-size:10px;letter-spacing:.16em}.hero-postcard p{font:italic 26px Georgia;margin:8px 0;color:#fff4df}.hero-signature{position:absolute;bottom:30px;left:5.5%;font:italic 22px Georgia;color:#ffe1c1}.shore-ribbon{display:flex;justify-content:center;align-items:center;gap:45px;background:var(--peach);padding:28px 20px;font:italic 27px Georgia;color:var(--ink)}.ribbon-star{font-size:30px;color:#9d5a40}

.dream-intro{background:var(--sea);padding:110px 0 120px;overflow:hidden}.dream-intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:110px;align-items:center}.dream-collage{position:relative;padding:0 55px 65px 0}.collage-main{transform:rotate(-3deg);background:#fffaf0;padding:13px 13px 20px;box-shadow:0 14px 35px #23465921}.collage-main img{width:100%;height:390px;object-fit:cover}.collage-main figcaption{font:italic 19px Georgia;padding:18px 4px 0}.collage-inset{position:absolute;right:-15px;bottom:0;width:42%;transform:rotate(7deg);border:9px solid #fff9ec;box-shadow:0 12px 30px #17354630}.collage-inset img{width:100%;height:220px;object-fit:cover}.collage-note{display:block;position:absolute;bottom:0;left:5px;font:italic 22px Georgia;color:#35625c;transform:rotate(-5deg)}.dream-intro-copy h2{font-size:clamp(44px,4.8vw,69px)}.dream-intro-copy p{margin-top:23px}.dream-intro-copy .text-link{margin-top:30px}

.dream-collection{padding:95px 0 110px;background:#fff9ef}.dream-collection h2{font-size:60px}.dream-collection .section-heading .text-link{margin-top:24px}.dream-projects{display:grid;grid-template-columns:1.25fr .85fr;gap:35px;align-items:start;margin-top:50px}.dream-project{position:relative;overflow:hidden;text-decoration:none;isolation:isolate;display:block;color:white}.dream-project>img{width:100%;height:620px;object-fit:cover;transition:transform .7s}.dream-project:hover>img{transform:scale(1.025)}.dream-project:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#102d48f0,transparent 70%);z-index:0}.dream-project>div{position:absolute;bottom:0;left:0;padding:36px;z-index:1}.dream-project .eyebrow{color:#fbd5a9}.dream-project h3{font-size:42px}.dream-project .text-link{margin-top:23px;border-color:#f5cfa5}.dream-project-small{margin-top:100px;border-radius:180px 180px 0 0}.dream-project-small img{height:520px}.dream-process{background:#153c55;color:#fff7ec;padding:90px 0}.dream-process .eyebrow{color:#f5c99c}.process-heading{display:grid;grid-template-columns:1.5fr 1fr;gap:90px;align-items:end}.dream-process h2{font-size:58px}.dream-process h2 em{color:#b4d9cc}.dream-process p{color:#e5eef0}.dream-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:55px}.dream-steps>a{color:inherit;text-decoration:none;border-top:1px solid #6b94a1;padding:28px 30px 0 0;margin-right:30px}.dream-steps>a:last-child{margin:0;padding-right:0}.dream-steps>a>span:first-child{font-size:12px;letter-spacing:.12em;color:#f5c99c}.dream-steps h3{font-size:34px;margin-top:22px}.dream-steps p{font-size:17px;margin-top:18px}.dream-steps .text-link{margin-top:25px;border-color:#edc28f}

.dream-invitation{position:relative;isolation:isolate;padding:115px 0;color:white;text-align:center;overflow:hidden;background:#356e74}.dream-invitation>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.dream-invitation:after{content:'';position:absolute;inset:0;background:#143c56a6;z-index:-1}.dream-invitation .eyebrow{color:#ffe0ad}.dream-invitation h2{font-size:clamp(46px,5.3vw,76px)}.dream-invitation h2 em{color:#ffe0bd}.dream-invitation p{color:white;max-width:550px;margin:28px auto}.dream-invitation .button{margin-top:10px}

/* Portfolio is its own richly colored destination. */

[data-page=work]{background:#e6eff0}.work-dream-opening{background:#153e57;color:#fff7eb;padding:56px 0 65px;overflow:hidden}.work-dream-opening>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.work-dream-opening h1{font-size:clamp(65px,7.1vw,102px);line-height:1.02}.work-dream-opening h1 em{color:#f4ccad}.work-dream-opening .eyebrow{color:#baddcf}.work-dream-opening p{color:#e7eff0;max-width:480px;margin-top:24px;font-size:19px}.collection-label{display:block;font-size:10px;letter-spacing:.15em;margin-top:36px;color:#d2e8e0}.work-dream-opening figure{position:relative;transform:rotate(2deg);padding:12px;background:#faf0da;box-shadow:0 12px 36px #06273950}.work-dream-opening img{width:100%;height:400px;object-fit:cover}.work-dream-opening figcaption{padding:15px 8px 5px;font:italic 20px Georgia;color:var(--ink)}.filters{padding-block:32px;border:0;gap:9px}.filters button{background:#fffdf6;border-color:#b0c3c7;font-size:14px;border-radius:30px}.filters [aria-pressed=true]{background:#19475b}.projects-grid{grid-template-columns:1.15fr .85fr;gap:44px 36px;align-items:start}.project-card{background:#fffaf0;box-shadow:0 10px 25px #173c4e12;overflow:hidden}.project-card:nth-child(2n){margin-top:70px;background:#f2d4bf}.project-card img{height:400px;object-fit:cover;transition:transform .6s}.project-card:hover img{transform:scale(1.02)}.project-card .card-copy{position:relative;padding:30px 32px 32px}.project-index{float:right;font:italic 28px Georgia;color:#7c5b41;margin-left:14px}.project-card .card-copy h2{font-size:38px}.project-card .card-copy p{font-size:17px}.project-card .text-link{margin-top:20px}.detail-gallery{border:0;margin-top:30px;padding:60px 42px 70px;background:#c8dfd5;width:min(1364px,calc(100% - 40px))}.detail-grid img{object-fit:cover;background:#f8f3e9}.detail-grid figure{padding:10px 10px 16px;background:#fffaf0}.detail-grid figcaption{font-size:15px;padding-inline:6px}.detail-gallery h2{font-size:48px}.beach-band{padding-block:90px}.beach-band h2{font-size:clamp(40px,4.4vw,64px)}

/* A different coastal tone in each chapter. */

[data-page=services]{background:#f8e7d8}[data-page=services] .page-heading{padding-top:65px}.possibility-strip{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:18px;margin-top:42px}.possibility-strip img{width:100%;height:230px;object-fit:cover}.possibility-strip img:nth-child(2){border-radius:150px 150px 0 0}.service-grid{gap:35px;padding-top:10px}.service-card{background:#fffaf2;box-shadow:0 9px 25px #503c2b0d}.service-card>div{padding:27px 30px 32px}.service-card:nth-child(3n+2){background:#d1e3da}.service-card>img{object-fit:cover}.service-card .eyebrow{font-size:12px}.service-card h2{font-size:36px}[data-page=journey]{background:#e1edf0}.journey-opening{padding-block:80px}.journey-opening figure img{border-radius:220px 220px 0 0;box-shadow:14px 14px 0 #d3b694}.journey-opening figcaption{margin-top:16px}.journey-plan{padding-top:35px}.stage{padding-inline:24px;background:#f8fbf7;margin-bottom:12px;border:0;border-left:4px solid #6c9b94}.stage[open]{background:#d0e0d6;border-left-color:#154a59}.stage-label{color:#375e61}.stage-body{padding-left:195px}.story-section{background:#193d52;color:#fff5e9}.story-section p,.story-section figcaption{color:#dcebed}.story-section button{color:#fff6ed;border-color:#769598}.story-section button[aria-selected=true]{background:#f4cfb1;color:#17374e;border-color:#f4cfb1}.story-section .text-link{border-color:#f4cfb1}.sequence img{background:#355769}.sequence figure{background:#264d61;padding:12px}.sequence figcaption{padding:15px 5px 6px;font-size:16px}

[data-page=about]{background:#d6e3d5}.about-layout>figure{transform:rotate(2deg);background:#fff9ef;padding:12px;box-shadow:0 15px 40px #24494222}.about-layout figcaption{padding:0 5px 10px;font-size:14px}.about-facts{background:#163d50;color:white;border:0;padding:35px;gap:35px}.about-facts p{color:#fff5e3}.about-facts span{color:#f5c99c}.conversation-grid article{border-top:2px solid #6e9385;padding-top:25px}

[data-page=contact]{background:#e7edf0}[data-page=contact] .page-heading{background:#163d56;color:white;width:100%;padding:65px max(48px,calc((100% - 1280px)/2));margin-bottom:60px}[data-page=contact] .page-heading h1 em{color:#f4cbae}[data-page=contact] .page-heading p{color:#e9eff1}[data-page=contact] .page-heading .eyebrow{color:#bdded1}.contact-layout form{background:#fffaf1;border-top:5px solid #d0a17f;box-shadow:0 12px 40px #13394e12}.contact-picture{margin-top:38px;transform:rotate(-2deg);background:#c8ded3;padding:12px}.contact-picture img{width:100%;height:220px;object-fit:cover}.contact-picture figcaption{padding:14px 5px 3px;font:italic 18px Georgia}

[data-page^=project-]{background:#e6eeeb}.project-heading{padding-block:45px}.project-heading h1{color:#143f55}.project-feature{background:#173f57;padding:15px 15px 20px;color:#fff6e7;box-shadow:0 12px 32px #18394717}.project-feature img{background:#173f57}.project-feature figcaption{padding-inline:7px;font-size:15px}.project-context{padding:36px;background:#f5d4bc;border:0}.story-grid figure{padding:12px 12px 18px;background:#fff9ee}.story-grid img{background:#e2e7df}.story-grid figcaption{font-size:16px;padding-inline:5px}.comparison{background:#bad5cf}.project-next{border-color:#a2bab5}

footer{background:#102e48;color:#f7eddf}footer p,footer .footer-small{color:#dce7e9}.footer-small{border-top-color:#446379}.motion-control{color:#eef5f0;border-color:#70919d}.footer-top{border-color:#446379}footer .text-link{border-color:#d4ae7d}.motion-paused .dream-hero>img{animation-play-state:paused}@keyframes shore-drift{from{transform:scale(1)}to{transform:scale(1.045)}}

@media(max-width:1180px){.header nav{gap:15px}.header nav a{font-size:12px}.brand span{font-size:15px}.dream-intro-grid{gap:65px}.dream-hero{height:720px}.dream-hero-copy{padding-bottom:80px}.dream-hero h1{font-size:105px}.hero-postcard{padding:20px}.dream-project>img{height:550px}.dream-project-small img{height:450px}.work-dream-opening img{height:360px}.project-card img{height:330px}.project-card .card-copy{padding:25px}.project-card .card-copy h2{font-size:33px}.stage-body{padding-left:0}.dream-process h2{font-size:50px}}

@media(max-width:880px){.header{min-height:78px}.header nav{gap:0 24px}.header nav a{font-size:15px}.dream-hero{height:700px}.hero-postcard{right:32px;bottom:45px}.hero-postcard p{font-size:21px}.dream-intro-grid{gap:40px}.dream-intro{padding-block:75px}.dream-collage{padding-right:20px}.collage-main img{height:300px}.collage-inset{right:-10px;width:50%}.collage-inset img{height:170px}.collage-note{font-size:18px}.dream-intro-copy h2{font-size:45px}.dream-collection{padding-block:65px}.dream-collection h2{font-size:49px}.dream-projects{gap:25px}.dream-project>img{height:480px}.dream-project-small{margin-top:70px}.dream-project-small img{height:410px}.dream-project>div{padding:25px}.dream-project h3{font-size:33px}.process-heading{gap:40px}.dream-steps{gap:20px}.dream-steps>a{margin:0;padding-right:0}.dream-steps h3{font-size:28px}.work-dream-opening>.wrap{gap:30px}.work-dream-opening h1{font-size:65px}.work-dream-opening img{height:300px}.project-card img{height:280px}.project-card .card-copy h2{font-size:29px}.journey-opening img{object-fit:cover}.about-layout>figure{max-width:650px}.service-card>div{padding:22px}.service-card h2{font-size:30px}}

@media(max-width:600px){body{font-size:17px}.brand span{font-size:14px}.header{min-height:72px}.header nav{border-color:#62818f}.dream-hero{height:730px;min-height:0}.dream-hero-copy{justify-content:flex-start;padding-top:70px;padding-bottom:0}.dream-hero h1{font-size:83px}.dream-hero>img{object-position:60% center}.dream-hero:after{background:linear-gradient(90deg,#112d48ba,#132b4650),linear-gradient(0deg,#142e4888,transparent)}.dream-hero p{font-size:17px;margin-top:28px;max-width:320px}.dream-hero p br{display:none}.dream-hero .actions{gap:24px;align-items:start;flex-direction:column}.dream-hero .eyebrow{font-size:11px}.hero-postcard{right:25px;bottom:30px;padding:14px 20px}.hero-postcard p{font-size:22px}.hero-postcard span{font-size:8px}.hero-signature{display:none}.shore-ribbon{gap:15px;padding:24px 12px;font-size:17px;flex-wrap:wrap}.ribbon-star{font-size:20px}.dream-intro{padding-block:60px}.dream-intro-grid{grid-template-columns:1fr;gap:45px}.dream-collage{max-width:500px;padding:0 45px 60px 5px}.collage-main img{height:285px}.collage-main figcaption{font-size:16px}.collage-inset{width:40%;right:5px}.collage-inset img{height:180px}.dream-intro-copy h2{font-size:48px}.dream-intro-copy p{margin-top:20px}.dream-collection h2{font-size:44px}.dream-projects{grid-template-columns:1fr;margin-top:35px;gap:32px}.dream-project>img{height:440px}.dream-project-small{margin:0 20px}.dream-project-small img{height:430px}.dream-project h3{font-size:36px}.dream-process{padding-block:60px}.process-heading{grid-template-columns:1fr;gap:24px}.dream-process h2{font-size:43px}.dream-steps{grid-template-columns:1fr;gap:32px;margin-top:35px}.dream-steps>a{padding-top:24px}.dream-steps h3{font-size:32px;margin-top:13px}.dream-steps p{margin-top:14px}.dream-steps .text-link{margin-top:18px}.dream-invitation{padding-block:80px}.dream-invitation h2{font-size:45px}.dream-invitation p{font-size:17px}.work-dream-opening{padding-block:42px}.work-dream-opening>.wrap{grid-template-columns:1fr;gap:35px}.work-dream-opening h1{font-size:68px}.work-dream-opening p{font-size:17px}.collection-label{margin-top:25px;font-size:9px}.work-dream-opening figure{margin-inline:8px}.work-dream-opening img{height:280px}.work-dream-opening figcaption{font-size:18px}.filters{padding-block:25px}.filters button{font-size:13px}.projects-grid{grid-template-columns:1fr;gap:30px}.project-card:nth-child(2n){margin-top:0}.project-card img{height:auto;aspect-ratio:4/3}.project-card .card-copy{padding:25px}.project-card .card-copy h2{font-size:34px}.detail-gallery{padding:35px 15px;width:calc(100% - 20px);margin-top:0}.detail-gallery h2{font-size:36px}.detail-grid{grid-template-columns:1fr 1fr;gap:20px 12px}.detail-grid figure{padding:7px 7px 12px}.detail-grid img{height:140px}.detail-grid figcaption{font-size:13px;padding:0}.beach-band{padding-block:65px}.beach-band h2{font-size:39px}[data-page=services] .page-heading{padding-top:40px}.possibility-strip{gap:10px;grid-template-columns:1fr 1fr;margin-top:28px}.possibility-strip img{height:155px}.possibility-strip img:last-child{display:none}.service-card>div{padding:25px}.service-card h2{font-size:33px}.journey-opening{padding-block:40px}.journey-opening img{height:320px}.journey-opening figure{margin-right:14px}.stage{padding-inline:16px}.stage summary{font-size:25px}.stage-body{padding-left:0}.about-layout>figure{margin-inline:6px}.about-facts{padding:26px;gap:28px}.about-layout>figure>img{height:390px;object-fit:cover}.contact-layout{padding-bottom:45px}[data-page=contact] .page-heading{padding:40px 20px;margin-bottom:38px}.contact-picture{margin-inline:5px}.project-heading h1{font-size:42px}.project-feature{padding:9px 9px 16px}.project-feature figcaption{font-size:14px}.project-context{padding:25px}.story-grid figure{padding:9px 9px 16px}.story-grid figcaption{font-size:14px}.comparison{padding:20px}.footer-small{font-size:12px}}

@media(max-width:359px){.brand span{font-size:12px}.brand small{font-size:7px}.brand img{width:29px}.header{gap:8px}.menu-toggle{padding:9px}.dream-hero h1{font-size:72px}.shore-ribbon{gap:10px;font-size:15px}.dream-hero{height:750px}.hero-postcard{right:22px}.dream-hero-copy{padding-top:55px}}

@media(prefers-reduced-motion:reduce){.dream-hero>img{animation:none}.dream-project:hover>img,.project-card:hover img{transform:none}}

@media(max-width:600px){.hero-postcard{display:none}}

.collage-main figcaption{max-width:60%;line-height:1.35}.collage-note{bottom:-15px}

[data-page] h1:focus{outline:none}



/* October 12: scoped opening video and authentic header branding only. */
header{background:#064ACF;border-bottom:2px solid #EABE38;backdrop-filter:none;color:#fff}
.header{min-height:146px;padding-block:10px;gap:30px}
.header .brand{display:flex;flex-direction:column;align-items:center;gap:0;flex:0 0 270px}
.header .brand img.sbg-full-logo{width:255px;height:105px;object-fit:contain;background:transparent;padding:0}
.header .brand .brand-tagline{font:16px/1.3 Georgia,serif;color:#ffe39a;letter-spacing:0;white-space:nowrap;text-shadow:0 1px 2px #002060}
.header-links{flex:1;min-width:0;display:flex;flex-direction:column;gap:16px}
.header-business{display:flex;justify-content:space-between;align-items:center;gap:18px;padding-bottom:12px;border-bottom:1px solid #ffffff40}
.header-services{font:600 12px/1.5 Arial,sans-serif;text-transform:uppercase;letter-spacing:.035em;color:#fff}
.header-services span{color:#FFD700;padding-inline:6px}
.header-phone{font:700 23px/1.2 Arial,sans-serif;color:#ffe39a;white-space:nowrap;text-decoration:none}
.header-phone:hover{text-decoration:underline}
.header nav{justify-content:flex-end;gap:22px}
.header nav a{color:#fff}
.header nav a:hover,.header nav a[aria-current]{color:#EABE38;border-bottom-color:#EABE38}
.header nav .nav-contact{background:#EABE38;border-color:#EABE38;color:#002060}
.header nav .nav-contact:hover{background:#f5ce58;color:#002060}
.header .menu-toggle{color:#fff;border-color:#eabe3880}
.dream-hero{height:calc(100svh - 146px);min-height:600px}
.dream-hero>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%;z-index:-2;animation:none;transform:none}
.dream-hero:after{background:linear-gradient(90deg,rgba(10,27,47,.76) 0%,rgba(10,27,47,.42) 38%,rgba(10,27,47,.12) 65%,transparent 100%)}
.dream-hero .hero-postcard{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(0,32,70,.65)}
.dream-hero h1,.dream-hero-copy>p,.dream-hero .text-link,.hero-signature{text-shadow:0 2px 8px rgba(0,0,0,.55)}
.tour-video-control{position:absolute;right:24px;top:20px;z-index:3;padding:9px 14px;background:#002060db;border:1px solid #EABE38;color:#fff;font:600 12px/1.4 Arial,sans-serif;cursor:pointer;border-radius:3px}
.tour-video-control:hover{background:#002060}
.tour-video-control:focus-visible{outline:3px solid #EABE38;outline-offset:4px}
@media(max-width:1180px){.header{gap:22px}.header .brand{flex-basis:240px}.header-services{font-size:11px}.header-services span{padding-inline:3px}.header-phone{font-size:21px}.header nav{gap:16px}}
@media(max-width:880px){.header{min-height:146px;flex-wrap:nowrap}.header .brand{flex-basis:220px}.header .brand img.sbg-full-logo{width:225px;height:95px}.header .brand .brand-tagline{font-size:14px}.header-business{flex-direction:column;align-items:flex-end;gap:5px;padding-bottom:8px}.header-links{align-items:stretch;gap:8px}.header .menu-toggle{align-self:flex-end}.header nav{border-color:#eabe3850;justify-content:stretch}.dream-hero{height:calc(100svh - 146px);min-height:600px}}
@media(max-width:600px){.header{flex-wrap:wrap;gap:12px;justify-content:center}.header .brand{flex-basis:100%}.header .brand img.sbg-full-logo{width:230px;height:95px}.header-links{flex-basis:100%}.header-business{flex-direction:row;align-items:center}.header-services{font-size:10px;max-width:180px}.header-phone{font-size:19px}.dream-hero{height:calc(100svh - 245px);min-height:650px}.tour-video-control{right:20px;top:16px}}
/* Larry's opening copy/layout: headline above the tour, links near its foot. */
.dream-hero .dream-hero-copy{justify-content:flex-start;padding-top:38px;padding-bottom:50px}
.dream-hero h1{font-size:clamp(46px,5.4vw,78px);line-height:1.04;max-width:calc(100% - 140px);letter-spacing:-.035em}
.dream-hero .dream-hero-copy>p{margin-top:auto;font-size:17px;line-height:1.6}
.dream-hero .actions{margin-top:20px}
.dream-hero .actions .button.sunset{background:#EABE38;border-color:#EABE38;color:#002060}
.dream-hero .actions .button.sunset:hover{background:#f5ce58}
.dream-hero .hero-signature{display:block;position:static;margin-top:auto;font:italic 28px/1.3 Georgia,serif;color:#EABE38;text-shadow:0 2px 6px #00152ee6}
@media(max-width:600px){.dream-hero .dream-hero-copy{padding-top:64px;padding-bottom:36px}.dream-hero h1{font-size:46px;max-width:100%}.dream-hero .actions{gap:18px;margin-top:18px}.dream-hero .hero-signature{font-size:25px}}
/* Four genuine finished views from the same home, in a gently angled photo group. */
.dream-intro{padding-block:90px 100px}
.dream-intro-grid{grid-template-columns:1.25fr 1fr;gap:75px}
.dream-collage.family-polaroids{display:grid;grid-template-columns:1fr 1fr;gap:24px 15px;padding:10px 0;max-width:none;isolation:isolate}
.family-polaroids .home-polaroid{position:relative;padding:10px 10px 19px;background:#fffaf0;box-shadow:0 12px 24px #23465925;transform:rotate(-5deg);margin:0;transition:translate .25s,box-shadow .25s}
.family-polaroids .home-polaroid:nth-child(2){transform:rotate(5deg);margin-top:24px;margin-bottom:-24px;z-index:1}
.family-polaroids .home-polaroid:nth-child(3){transform:rotate(3deg)}
.family-polaroids .home-polaroid:nth-child(4){transform:rotate(-4deg);margin-top:24px;margin-bottom:-24px}
.family-polaroids .home-polaroid:hover{translate:0 -5px;box-shadow:0 17px 28px #23465935;z-index:2}
.family-polaroids img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.family-polaroids a{display:block;cursor:zoom-in}
.family-photo-hint{grid-column:1/-1;text-align:center;font:12px/1.4 Arial,sans-serif;color:#46655e;margin-top:24px}
.family-polaroids figcaption{font:italic 18px/1.3 Georgia,serif;padding:14px 3px 0;color:#17343d}
.dream-intro-copy h2{font-size:clamp(42px,4.5vw,64px)}
@media(max-width:880px){.dream-intro-grid{gap:40px}.family-polaroids figcaption{font-size:15px}.family-polaroids .home-polaroid{padding:7px 7px 15px}.dream-intro-copy h2{font-size:42px}}
@media(max-width:600px){.dream-intro{padding-block:55px 65px}.dream-intro-grid{grid-template-columns:1fr;gap:60px}.dream-collage.family-polaroids{margin-inline:8px}.family-polaroids figcaption{font-size:16px}.dream-intro-copy h2{font-size:44px}}
@media(prefers-reduced-motion:reduce){.family-polaroids .home-polaroid{transition:none}.family-polaroids .home-polaroid:hover{translate:none}}
/* Exact gold monogram, company lettering, rule and slogan from Larry's sign image. */
.header{min-height:212px;padding-block:10px;gap:24px}
.header .brand{flex:0 0 348px}
.header .brand img.sbg-full-logo{display:block;width:348px;height:192px;max-width:100%;padding:0;object-fit:contain;background:transparent}
.header nav{gap:18px}
.dream-hero{height:calc(100svh - 214px)}
@media(max-width:1180px){.header .brand{flex-basis:320px}.header .brand img.sbg-full-logo{width:320px;height:177px}.header{min-height:197px;gap:24px}.header nav{gap:13px}.header-services{font-size:10px}.header-phone{font-size:20px}.dream-hero{height:calc(100svh - 199px)}}
@media(max-width:880px){.header .brand{flex-basis:300px}.header .brand img.sbg-full-logo{width:300px;height:166px}.header{min-height:186px}.dream-hero{height:calc(100svh - 188px)}}
@media(max-width:600px){.header .brand{flex-basis:100%}.header .brand img.sbg-full-logo{width:300px;height:166px}.header{gap:12px}.dream-hero{height:calc(100svh - 310px)}}
.header-services{font-size:18px;font-weight:700;letter-spacing:.02em}
@media(max-width:1180px){.header-services{font-size:16px}}
@media(max-width:880px){.header-services{font-size:14px}}
@media(max-width:600px){.header-services{font-size:12px}}
/* A compact album of different real projects; static background, interactive photo cards. */
.possibilities-collection{padding:70px 0 75px;background:#f6ecdd;overflow:hidden}
.possibilities-collection h2{font-size:clamp(42px,4.5vw,64px);text-align:center;margin:0 0 48px;color:#123650}
.possibilities-collection h2 em{font-style:italic;color:#39716f}
.possibility-polaroids{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 30px;padding:10px 12px 18px}
.possibility-polaroid{display:block;text-decoration:none;background:#fffdf6;padding:11px 11px 0;box-shadow:0 9px 22px #443b3024;transform:rotate(var(--tilt,-2deg));transition:transform .3s ease,box-shadow .3s ease;position:relative;align-self:start}
.possibility-polaroid:nth-child(2){--tilt:2deg;margin-top:16px}
.possibility-polaroid:nth-child(3){--tilt:-1.5deg}
.possibility-polaroid:nth-child(4){--tilt:1.5deg}
.possibility-polaroid:nth-child(5){--tilt:-2deg;margin-top:16px}
.possibility-polaroid:nth-child(6){--tilt:2.5deg}
.possibility-polaroid img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:#dde4df}
.possibility-polaroid:nth-child(4) img{object-position:50% 80%}
.possibility-polaroid figcaption{padding:17px 9px 20px}
.possibility-polaroid h3{font:italic 25px/1.15 Georgia,serif;letter-spacing:-.025em;color:#17343d;min-height:2.3em}
.possibility-polaroid figcaption>span{display:flex;justify-content:space-between;align-items:center;gap:10px;font:600 11px/1.4 Arial,sans-serif;color:#5a6c68;margin-top:8px}
.possibility-polaroid figcaption>span>span{font:20px/1 Arial;color:#956f34}
.possibility-polaroid:hover,.possibility-polaroid:focus-visible{transform:translateY(-7px) rotate(0);box-shadow:0 18px 30px #443b3035;z-index:2}
.possibilities-footer{text-align:center;margin-top:32px}
@media(max-width:880px){.possibility-polaroids{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 26px}.possibility-polaroid h3{font-size:24px}.possibility-polaroid:nth-child(n){margin-top:0}}
@media(max-width:600px){.possibilities-collection{padding:55px 0}.possibility-polaroids{gap:28px 18px;padding-inline:4px}.possibility-polaroid{padding:7px 7px 0}.possibility-polaroid figcaption{padding:12px 4px 15px}.possibility-polaroid h3{font-size:20px;min-height:3.45em}.possibility-polaroid figcaption>span{font-size:10px}.possibilities-collection h2{margin-bottom:30px;font-size:39px}}
@media(max-width:380px){.possibility-polaroids{grid-template-columns:1fr;padding-inline:18px}.possibility-polaroid h3{min-height:0;font-size:25px}}
.motion-paused .possibility-polaroid{transition:none}
.motion-paused .possibility-polaroid:hover,.motion-paused .possibility-polaroid:focus-visible{transform:rotate(var(--tilt,-2deg))}
@media(prefers-reduced-motion:reduce){.possibility-polaroid{transition:none}.possibility-polaroid:hover,.possibility-polaroid:focus-visible{transform:rotate(var(--tilt,-2deg))}}
/* Clear, unnumbered process overview and five project-specific journey stages. */
.sbg-brand-footer{background:#064ACF;color:#fff;border-top:2px solid #EABE38}
.sbg-brand-footer .footer-top{display:grid;grid-template-columns:320px 1fr auto;gap:35px;align-items:center;padding-block:28px}
.sbg-brand-footer .footer-brand img{display:block;width:320px;height:177px;max-width:100%;object-fit:contain}
.sbg-brand-footer .footer-business .footer-services{font:700 16px/1.65 Arial,sans-serif;text-transform:uppercase;letter-spacing:.02em;color:#fff;margin:0 0 16px}
.sbg-brand-footer .footer-services span{color:#EABE38;padding-inline:3px}
.sbg-brand-footer address{font:normal 16px/1.6 Arial,sans-serif;color:#fff}
.sbg-brand-footer .footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.sbg-brand-footer .footer-contact>a{display:block;text-decoration:none}
.sbg-brand-footer .footer-phone{font:700 23px/1.3 Arial,sans-serif;color:#ffe39a}
.sbg-brand-footer .footer-email{font:16px/1.5 Arial,sans-serif;color:#fff}
.sbg-brand-footer .footer-contact .button{background:#EABE38;border-color:#EABE38;color:#002060;margin-top:4px}
.sbg-brand-footer .footer-small{border-top:1px solid #ffffff40;color:#fff}
.sbg-brand-footer .footer-small p{color:#fff}
.sbg-brand-footer a:focus-visible{outline:2px solid #ffe39a;outline-offset:5px}
@media(max-width:880px){.sbg-brand-footer .footer-top{grid-template-columns:280px 1fr;gap:25px}.sbg-brand-footer .footer-brand{grid-row:1/3}.sbg-brand-footer .footer-contact{grid-column:2}.sbg-brand-footer .footer-brand img{width:280px;height:auto}.sbg-brand-footer .footer-top>div:nth-child(2){margin:0}}
@media(max-width:600px){.sbg-brand-footer .footer-top{grid-template-columns:1fr;gap:24px;text-align:center}.sbg-brand-footer .footer-brand{grid-row:auto;justify-self:center}.sbg-brand-footer .footer-contact{grid-column:auto;align-items:center}}
.dream-process .dream-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:50px}
.dream-process .dream-steps>a{margin:0;padding-right:0}
.dream-process .dream-steps h3{margin-top:0}
.meaningful-journey .stage summary{grid-template-columns:220px 1fr 24px;gap:25px}
.meaningful-journey .stage-label{font:600 15px/1.5 Arial,sans-serif;letter-spacing:.02em;text-transform:none}
.meaningful-journey .stage-body{padding:0 20px 32px 245px}
.meaningful-journey .stage-readiness{grid-column:1/-1;border-top:1px solid #39716f40;padding-top:20px}
.meaningful-journey .stage summary:focus-visible{outline:2px solid #39716f;outline-offset:6px}
@media(max-width:880px){.meaningful-journey .stage-body{padding-left:0}.meaningful-journey .stage summary{grid-template-columns:180px 1fr 24px;gap:18px}}
@media(max-width:600px){.dream-process .dream-steps{grid-template-columns:1fr;gap:32px}.meaningful-journey .stage summary{grid-template-columns:1fr 24px}.meaningful-journey .stage-label{grid-column:1/-1}.meaningful-journey .stage-body{padding-right:0}.meaningful-journey .stage-readiness{grid-column:auto}}
/* Keep services with the logo and slogan, not in the navigation/contact column. */
.header .brand{flex-basis:440px;gap:6px;text-decoration:none}
.header-business{justify-content:flex-end}
.brand-services{display:block;font:700 16px/1.5 Arial,sans-serif;letter-spacing:0;text-transform:uppercase;color:#fff;text-align:center}
.header .brand .brand-services{font-family:Arial,sans-serif;font-weight:700;line-height:1.5;letter-spacing:0;color:#fff}
.brand-services>span{color:#EABE38;padding-inline:3px}
.sbg-brand-footer .footer-top{grid-template-columns:400px 1fr auto}
.sbg-brand-footer .footer-brand{display:flex;flex-direction:column;align-items:center;gap:8px}
.sbg-brand-footer .brand-services{font-size:14px}
@media(max-width:1180px){.header .brand{flex-basis:400px}.header .brand-services{font-size:14px}}
@media(max-width:880px){.header .brand{flex-basis:300px}.header .brand-services{font-size:13px}.sbg-brand-footer .footer-top{grid-template-columns:300px 1fr}.sbg-brand-footer .brand-services{font-size:13px}}
@media(max-width:600px){.header .brand{flex-basis:100%}.header .brand-services{font-size:13px}.sbg-brand-footer .footer-top{grid-template-columns:1fr}.sbg-brand-footer .footer-brand{max-width:100%}}
/* A lighter upper-left brand lockup; footer artwork deliberately retains its size. */
.header{min-height:0}
.header .brand{flex-basis:380px;gap:5px}
.header .brand img.sbg-full-logo{width:300px;height:166px}
.header .brand .brand-services{font-size:14px}
@media(max-width:1180px){.header .brand{flex-basis:350px}.header .brand img.sbg-full-logo{width:272px;height:150px}.header .brand .brand-services{font-size:12.5px}}
@media(max-width:880px){.header .brand{flex-basis:280px}.header .brand img.sbg-full-logo{width:255px;height:141px}.header .brand .brand-services{font-size:12px}}
@media(max-width:600px){.header .brand{flex-basis:100%}}

.portfolio{--ps-ink:#243f49;--ps-green:#59776f;--ps-gold:#d3ab39;color:var(--ps-ink)}
.portfolio h1 em,.portfolio h2 em{color:var(--ps-green)}
.portfolio .work-dream-opening h1 em{color:#dbe4d6}
/* Large image views remain square to the screen; the collection cards keep their Polaroid treatment. */
.portfolio .ps-hero-photo,.portfolio .ps-room-feature,body .portfolio .ps-gallery .ps-photo{transform:none}
.portfolio .ps-photo img{filter:none;image-rendering:auto}
.ps-opening{padding-top:38px;padding-bottom:48px}.ps-back{display:block;width:fit-content;margin:0 0 35px!important}.ps-opening h1{font:400 clamp(48px,5.5vw,78px)/1.06 Georgia,serif;max-width:900px;margin:16px 0 23px}.ps-opening p{max-width:690px;font-size:17px;line-height:1.7;color:#526a70}.ps-opening .eyebrow{display:block}
.ps-photo{margin:0;background:#fffdf7;padding:12px 12px 19px;box-shadow:0 12px 30px #213c421c}.ps-photo a{display:block;position:relative}.ps-photo img{display:block;width:100%;height:280px;object-fit:cover}.ps-photo figcaption{padding:15px 5px 0;font:italic 21px/1.25 Georgia,serif}.ps-enlarge{position:absolute;right:12px;bottom:12px;background:#fffdf7ee;padding:7px 12px;font:12px Arial,sans-serif;color:#243f49;opacity:0;transition:opacity .2s}.ps-photo a:hover .ps-enlarge,.ps-photo a:focus-visible .ps-enlarge{opacity:1}.ps-hero-photo{max-width:1050px;margin:0 auto 65px;transform:rotate(-1deg)}.ps-hero-photo img{height:min(610px,65vw);object-fit:contain;background:#edeae2}.ps-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.ps-gallery .ps-photo:nth-child(3n+1){transform:rotate(-1.5deg)}.ps-gallery .ps-photo:nth-child(3n+2){transform:rotate(1.5deg)}.ps-gallery-page{padding-bottom:70px}
.ps-next{display:flex;justify-content:space-between;align-items:center;gap:45px;padding-top:65px;padding-bottom:80px;border-top:1px solid #cbd6d0}.ps-next h2,.ps-detail-heading h2,.ps-process-link h2,.ps-stage-heading h2,.ps-raise-note h2{font:400 clamp(35px,3.6vw,54px)/1.12 Georgia,serif;margin:0}.ps-next>div{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.ps-next .text-link{margin:0}
.ps-work-collection{padding-top:45px;padding-bottom:75px}.ps-projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 32px}.ps-project-card{background:#fffdf7;padding:12px;box-shadow:0 13px 26px #213c4223;transition:transform .35s,box-shadow .35s}.ps-project-card:nth-child(3n+1){transform:rotate(-1.5deg)}.ps-project-card:nth-child(3n+2){transform:rotate(1.5deg)}.ps-project-card:hover{transform:translateY(-6px) rotate(0);box-shadow:0 20px 35px #213c4233}.ps-project-card>a{text-decoration:none;display:block}.ps-project-card img{width:100%;height:250px;object-fit:cover}.ps-project-card>a>div{padding:23px 10px 15px}.ps-project-card .eyebrow{font-size:10px;letter-spacing:.13em}.ps-project-card h2{font:italic 31px/1.15 Georgia,serif;margin:10px 0 14px}.ps-project-card p{font-size:14px;line-height:1.65;color:#5d7075}.ps-project-card .text-link{font-size:13px;margin-top:20px}.ps-project-card[hidden]{display:none}
.ps-stage-section{background:#dce7e3;padding:55px 0 70px}.ps-stage-heading{display:flex;justify-content:space-between;gap:40px;align-items:end}.ps-stage-heading p{font-size:14px;color:#536e68}.ps-stage-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}.ps-stage-buttons button,.ps-room-keys button{font:14px Arial,sans-serif;cursor:pointer;background:transparent;color:#243f49;border:1px solid #91aaa2;padding:12px 18px;border-radius:2px}.ps-stage-buttons [aria-pressed=true],.ps-room-keys [aria-pressed=true]{background:#243f49;color:white;border-color:#243f49}.ps-stage-panel[hidden],.ps-room-panel[hidden]{display:none}.ps-stage-feature{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:34px;align-items:start}.ps-stage-main img{height:480px;object-fit:contain;background:#eeece5}.ps-stage-aside{padding-top:10px}.ps-stage-aside h3{font:400 30px/1.15 Georgia,serif;margin:0 0 8px}.ps-stage-aside>p{font-size:13px;margin:0 0 20px;color:#526d65}.ps-stage-thumbs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ps-stage-thumbs .ps-photo{padding:7px 7px 12px}.ps-stage-thumbs img{height:125px}.ps-stage-thumbs figcaption{font:italic 15px/1.2 Georgia,serif;padding:10px 0 0}.ps-stage-thumbs .ps-enlarge{display:none}
.ps-room-section{padding-bottom:80px}.ps-room-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:35px;align-items:start}.ps-plan-shell{background:white;padding:20px;box-shadow:0 12px 25px #213c4217}.ps-plan{position:relative}.ps-plan img{width:100%;height:auto;display:block}.ps-hotspot{position:absolute;transform:translate(-50%,-50%);width:36px;height:36px;border:3px solid white;border-radius:50%;background:#eabe38;color:#203d49;box-shadow:0 2px 7px #0005;cursor:pointer;font:bold 21px/1 Arial,sans-serif;padding:0}.ps-hotspot[aria-pressed=true]{background:#064acf;color:white}.ps-room-keys{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.ps-room-keys button{padding:9px 12px;font-size:12px}.ps-room-feature{transform:rotate(1.5deg)}.ps-room-feature img{height:330px}.ps-room-more{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:25px}.ps-room-more .ps-photo{padding:7px 7px 13px}.ps-room-more img{height:120px}.ps-room-more figcaption{font-size:16px}.ps-room-status,.ps-plan-note{font:12px/1.5 Arial,sans-serif;color:#526c70;margin:17px 0}.ps-detail-heading{margin:70px 0 40px}.ps-raise-note{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin:50px 0}.ps-raise-note p{color:#526a70;line-height:1.7}.ps-process-link{padding-top:65px;padding-bottom:65px;display:flex;align-items:center;justify-content:space-between;gap:35px;background:transparent}.portfolio button:focus-visible,.portfolio a:focus-visible{outline:3px solid #b07800;outline-offset:5px}.portfolio [hidden]{display:none!important}
.motion-paused .ps-project-card{transition:none!important}.motion-paused .ps-project-card:hover{transform:none}
@media(max-width:950px){.ps-projects,.ps-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.ps-stage-feature,.ps-room-layout{grid-template-columns:1fr}.ps-stage-thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}.ps-room-feature img{height:400px}.ps-next{align-items:start}.ps-next>div{flex-direction:column;align-items:start}.ps-room-more img{height:180px}}
@media(max-width:600px){.ps-projects,.ps-gallery{grid-template-columns:1fr}.ps-project-card{max-width:390px;width:100%;margin:auto}.ps-opening{padding-top:25px}.ps-opening h1{font-size:46px}.ps-stage-heading,.ps-next,.ps-process-link{display:block}.ps-next>div{margin-top:28px}.ps-stage-main img{height:330px}.ps-stage-thumbs{grid-template-columns:repeat(2,minmax(0,1fr))}.ps-stage-buttons button{padding:10px 12px;font-size:12px}.ps-plan-shell{padding:10px}.ps-hotspot{width:30px;height:30px;font-size:17px}.ps-room-feature img{height:280px}.ps-room-more img{height:120px}.ps-hero-photo img{height:370px}.ps-raise-note{grid-template-columns:1fr;gap:24px}.ps-process-link .button{margin-top:25px}.ps-work-collection .filters{gap:8px}.ps-work-collection .filters button{font-size:12px;padding:9px 12px}}
@media(prefers-reduced-motion:reduce){.portfolio *{animation:none!important;transition:none!important}.ps-project-card:hover{transform:none}}


.dream-invitation h2,.dream-invitation .invitation-promise{font-family:Georgia,'Times New Roman',serif;font-size:clamp(46px,5.3vw,76px);font-weight:400;line-height:1.12;letter-spacing:-.035em;color:#fff;max-width:none}
.dream-invitation .invitation-promise{margin:24px auto 34px}
.dream-invitation .invitation-contact{background:#EABE38;border-color:#EABE38;color:#002060;justify-content:center}
.dream-invitation .invitation-contact:hover{background:#f5ce58;border-color:#f5ce58}
.dream-invitation .invitation-contact::after{content:none;display:none}
@media(max-width:700px){.dream-invitation h2,.dream-invitation .invitation-promise{font-size:45px}}


.dream-invitation .wrap{max-width:1240px}
.dream-invitation h2,.dream-invitation .invitation-promise{letter-spacing:-.025em;line-height:1.18;text-shadow:0 2px 18px rgba(9,35,46,.3)}
.dream-invitation h2{color:#fffaf2;margin-bottom:0}
.dream-invitation h2 em{font-weight:400;color:#ffe5c4}
.dream-invitation .invitation-promise{font-style:italic;color:#ffe5c4;margin:22px auto 44px;text-wrap:balance}
.dream-invitation .invitation-contact{padding:18px 34px;letter-spacing:.035em}
@media(max-width:700px){.dream-invitation h2,.dream-invitation .invitation-promise{font-size:clamp(34px,7.6vw,45px)}.dream-invitation .invitation-promise{margin:22px auto 36px}}


.dream-hero .actions{margin-top:26px;gap:0}
.dream-hero .actions .hero-inspiration-link{display:inline-block;width:fit-content;padding:5px 0 9px;background:transparent;border:0;border-bottom:1px solid #EABE38;box-shadow:none;border-radius:0;color:#fffaf2;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:clamp(23px,2vw,29px);font-weight:400;line-height:1.3;text-decoration:none;letter-spacing:.015em;text-shadow:0 2px 7px rgba(0,0,0,.55);transition:color .2s ease,border-color .2s ease}
.dream-hero .actions .hero-inspiration-link::before,.dream-hero .actions .hero-inspiration-link::after{content:none;display:none}
.dream-hero .actions .hero-inspiration-link:hover{color:#ffe5c4;border-bottom-color:#ffe5c4}
.dream-hero .actions .hero-inspiration-link:focus-visible{outline:2px solid #EABE38;outline-offset:7px}
@media(prefers-reduced-motion:reduce){.dream-hero .actions .hero-inspiration-link{transition:none}}

.button::after,.text-link::after{content:none;display:none;margin:0}
.expanded-journey .ps-opening{padding-bottom:34px}
.expanded-journey .journey-total{font:12px/1.5 Arial,sans-serif;letter-spacing:.08em;color:#59776f;margin-top:24px}
.expanded-journey .ps-stage-section{padding-top:42px}
.expanded-journey .ps-stage-buttons{gap:10px;margin-bottom:34px}
.expanded-journey .ps-stage-buttons button{text-align:left;min-height:62px;flex:1 1 170px;max-width:260px;padding:12px 17px}
.expanded-journey .ps-stage-buttons button span{display:block;font-size:11px;opacity:.8;margin-top:5px}
.expanded-journey .journey-lead{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:44px;align-items:center;margin-bottom:38px}
.expanded-journey .journey-lead .ps-photo img{height:460px;object-fit:contain;background:#edeae2}
.expanded-journey .journey-stage-copy h3{font:400 clamp(32px,3.2vw,48px)/1.15 Georgia,serif;color:#243f49;margin:0 0 22px}
.expanded-journey .journey-stage-copy p{font-size:16px;line-height:1.75;max-width:430px;color:#526a70}
.expanded-journey .journey-stage-copy .journey-count{font-size:12px;letter-spacing:.08em;color:#59776f}
.expanded-journey .journey-photos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.expanded-journey .journey-photos .ps-photo{padding:9px 9px 17px}
.expanded-journey .journey-photos .ps-photo img{height:200px;object-fit:contain;background:#edeae2}
.expanded-journey .journey-photos figcaption{font:italic 17px/1.4 Georgia,serif}
.expanded-journey .journey-photos:empty{display:none}
.expanded-journey .ps-next .button{background:#EABE38;border-color:#EABE38;color:#002060}
@media(max-width:950px){.expanded-journey .journey-lead{grid-template-columns:1fr;gap:28px}.expanded-journey .journey-stage-copy p{max-width:680px}.expanded-journey .journey-photos{grid-template-columns:repeat(3,minmax(0,1fr))}.expanded-journey .ps-stage-buttons button{flex-basis:150px}}
@media(max-width:600px){.expanded-journey .ps-stage-buttons button{flex-basis:calc(50% - 10px);max-width:none;padding:10px 12px}.expanded-journey .journey-lead .ps-photo img{height:320px}.expanded-journey .journey-photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.expanded-journey .journey-photos .ps-photo img{height:160px}.expanded-journey .journey-photos figcaption{font-size:15px}.expanded-journey .journey-lead{margin-bottom:28px}}

.ryan-coastal .ps-opening{padding-bottom:28px}.ryan-coastal .ps-opening h1{max-width:1000px}
.ryan-coastal .ps-stage-section{background:linear-gradient(145deg,#e9eee5,#dce7e3 60%,#d8e4e3);padding-top:35px}
.ryan-coastal .ps-stage-buttons{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;margin:0 0 48px;padding-top:10px}
.ryan-coastal .ps-stage-buttons button{position:relative;text-align:left;border:0;border-radius:0;background:transparent;color:#59776f;padding:36px 18px 12px 0;min-height:105px;font:17px/1.3 Georgia,serif;max-width:none}
.ryan-coastal .ps-stage-buttons button:before{content:"";position:absolute;left:0;right:0;top:12px;height:2px;background:#adc1b8}
.ryan-coastal .ps-stage-buttons button:after{content:"";position:absolute;left:0;top:3px;width:20px;height:20px;border:2px solid #91aaa2;border-radius:50%;background:#f7f4eb;box-sizing:border-box}
.ryan-coastal .ps-stage-buttons button:last-child:before{right:calc(100% - 20px)}
.ryan-coastal .ps-stage-buttons button[aria-pressed=true]{color:#243f49;background:transparent;font-weight:600}
.ryan-coastal .ps-stage-buttons button[aria-pressed=true]:after{background:#eabe38;border-color:#b69845;box-shadow:0 0 0 5px #eabe3826}
.ryan-coastal .ps-stage-buttons button span{font:11px/1.4 Arial,sans-serif;display:block;margin-top:8px;color:#59776f}
.ryan-coastal .ryan-chapter{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(0,1fr);gap:48px;align-items:center}
.ryan-coastal .ryan-postcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}
.ryan-coastal .ryan-postcards .ps-photo{padding:9px 9px 17px;transition:transform .3s ease,box-shadow .3s ease}
.ryan-coastal .ryan-postcards .ps-photo:nth-child(1){transform:rotate(-2deg);margin-top:18px}
.ryan-coastal .ryan-postcards .ps-photo:nth-child(2){transform:rotate(1.5deg)}
.ryan-coastal .ryan-postcards .ps-photo:nth-child(3){transform:rotate(-1deg);margin-top:29px}
.ryan-coastal .ryan-postcards .ps-photo:hover,.ryan-coastal .ryan-postcards .ps-photo:focus-within{transform:translateY(-5px) rotate(0)}
.ryan-coastal .ryan-postcards img{height:310px;object-fit:cover}
.ryan-coastal .ryan-postcards figcaption{font:italic 17px/1.4 Georgia,serif;padding-top:12px}
.ryan-coastal .ryan-chapter h2{font:400 clamp(28px,3vw,42px)/1.15 Georgia,serif;margin:0 0 18px;color:#243f49}
.ryan-coastal .ryan-chapter p{font-size:16px;line-height:1.8;color:#526a70}
.ryan-coastal .journey-photos{margin-top:55px;gap:24px}.ryan-coastal .journey-photos .ps-photo img{height:190px}
.ryan-coastal .ryan-postcards:has(>.ps-photo:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
.motion-paused .ryan-coastal .ps-photo:hover{transform:none}
@media(max-width:1000px){.ryan-coastal .ryan-chapter{grid-template-columns:1fr;gap:40px}.ryan-coastal .ps-stage-buttons{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:15px}.ryan-coastal .ps-stage-buttons button:nth-child(3):before{right:calc(100% - 20px)}}
@media(max-width:600px){.ryan-coastal .ps-stage-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ryan-coastal .ps-stage-buttons button{font-size:15px;padding-right:6px;min-height:105px}.ryan-coastal .ps-stage-buttons button:before{display:none}.ryan-coastal .ryan-postcards{grid-template-columns:1fr;gap:24px;max-width:380px;margin:auto}.ryan-coastal .ryan-postcards .ps-photo{margin-top:0!important}.ryan-coastal .ryan-postcards img{height:280px;object-fit:contain;background:#eeece5}.ryan-coastal .ryan-postcards:has(>.ps-photo:nth-child(2):last-child){grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.ryan-coastal .ps-photo{transition:none!important}.ryan-coastal .ps-photo:hover{transform:none!important}}


.dream-invitation .family-owned-message{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,4.3vw,62px);font-weight:400;font-style:italic;line-height:1.5;letter-spacing:-.025em;color:#fffaf2;max-width:1100px;margin:0 auto 40px;text-shadow:0 3px 15px #09232e80;text-wrap:balance}
.dream-invitation .family-owned-message span{display:block;font-size:.78em;line-height:1.6;letter-spacing:-.025em;color:#ffe5c4;margin-top:12px}
@media(max-width:700px){.dream-invitation .family-owned-message{font-size:clamp(29px,6.3vw,42px);line-height:1.5;margin-bottom:30px}.dream-invitation .family-owned-message span{font-size:.84em;line-height:1.65}.family-desktop-break{display:none}}

/* Hosting accessibility: dimensions reserve space, no hidden startup content. */
html{scroll-padding-top:30px} :focus-visible{outline:3px solid #b87b08;outline-offset:5px} #main{outline:none} @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}
