*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:#faf8f3;color:#163947;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(44px,5.2vw,78px)}h2{font-size:clamp(36px,3.7vw,56px)}h3{line-height:1.25;font-weight:400}em{font-weight:400}p{color:#56636a}.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:600;line-height:1.6}.section{max-width:1320px;margin:auto;padding:94px 64px}section[id]{scroll-margin-top:15px}.site-header{height:96px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:#faf8f3;position:sticky;top:0;z-index:10;border-bottom:1px solid #deddd4}.brand-name{font-family:Georgia,serif;font-size:27px;line-height:1.1;display:block;letter-spacing:-.04em}.brand-sub{font-family:Arial,sans-serif;display:block;font-size:9px;letter-spacing:.23em;margin-top:10px}.site-header nav{display:flex;align-items:center;gap:36px;font-size:13px}.site-header nav a{padding:8px 0}.site-header nav a:hover{color:#ad4d35}.nav-contact{border-bottom:1px solid #163947}.nav-contact span{margin-left:24px}.menu-toggle{display:none}.hero{position:relative;min-height:630px;height:min(720px,78vh);isolation:isolate;color:white;background:#233b38}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%;z-index:-2}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,31,32,.80),rgba(14,31,32,.38) 58%,rgba(14,31,32,.12));z-index:-1}.hero-content{padding:110px 7% 90px;max-width:1150px}.hero-content .eyebrow{color:#f3e4c7;margin-bottom:26px}.hero h1{max-width:850px;margin-bottom:30px;font-size:clamp(48px,5.3vw,78px)}.hero p{color:#f7f4ec;font-size:18px}.hero .actions{margin-top:38px}.actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;border-radius:0;padding:15px 22px;font-size:13px;letter-spacing:.01em;font-weight:500;line-height:1.45;transition:background .2s,color .2s}.primary{background:#163947;color:white}.primary:hover{background:#2c5868}.light{background:#f6ecd9;color:#163947}.light:hover{background:white}.outline{border-color:#163947;color:#163947;background:transparent}.outline:hover{background:#e9e7df}.ghost{background:transparent;border-color:#d7dddb;color:white}.ghost:hover{background:#ffffff20}.hero-note{position:absolute;bottom:27px;left:7%;right:7%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.2em}.hero-note a{font-size:9px}.quick-facts{display:flex;justify-content:space-around;gap:20px;border-bottom:1px solid #dcded5;padding:24px 5%;font-size:12px}.quick-facts span+span{border-left:1px solid #d2d3cb;padding-left:50px}.intro{display:grid;grid-template-columns:1fr 2.2fr;gap:60px;padding-bottom:64px}.intro>.eyebrow{padding-top:15px}.intro h2{font-size:clamp(34px,3.4vw,51px)}.intro p:not(.eyebrow){max-width:710px}.small{font-size:12px;line-height:1.65}.section-heading{display:flex;justify-content:space-between;gap:60px;align-items:flex-end;margin-bottom:45px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:330px;font-size:15px;margin:0}.apartments{padding-top:45px}.apartment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.card-image{display:block;position:relative;overflow:hidden}.card-image img{width:100%;height:320px;object-fit:cover;transition:transform .6s}.card-image:hover img{transform:scale(1.035)}.apartment-number{position:absolute;bottom:16px;left:18px;color:white;border:1px solid #ffffffb0;font-family:Georgia,serif;font-size:20px;width:43px;height:43px;display:grid;place-items:center;background:#0003}.card-copy{padding:24px 0;border-bottom:1px solid #d6d8cf}.card-copy .eyebrow{color:var(--accent);margin-bottom:8px;font-size:10px}.card-copy h3{font-family:Georgia,serif;font-size:40px;margin-bottom:13px}.card-copy h3 a{display:flex;justify-content:space-between;align-items:center}.card-copy h3 span{font-family:Arial;font-size:24px;color:var(--accent)}.card-details{font-size:12px;color:#5d676b}.text-link{border-bottom:1px solid #9aa7a8;padding-bottom:5px;font-size:13px;display:inline-block}.text-link span{margin-left:18px}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:58px}.services-grid>div{border-top:1px solid #bfc8c7;padding-top:28px}.service-icon{font-family:Georgia;font-size:38px;line-height:1;display:block;margin-bottom:23px;color:#366476}.services-grid h3{font-size:18px;margin-bottom:13px}.services-grid p{font-size:13px;margin:0}.camino-section{display:grid;grid-template-columns:1fr 1fr;background:#163947;color:#fbf7ed;margin:20px 0}.camino-section>img{width:100%;height:100%;min-height:540px;object-fit:cover}.camino-section>div{padding:80px max(35px,7vw)}.camino-section p{color:#c7d5d6;font-size:15px}.camino-section .eyebrow{color:#eadbbe}.camino-section address{font-style:normal;font-size:14px;border-left:1px solid #829aa4;padding-left:18px;margin:28px 0 35px}.faq{display:grid;grid-template-columns:1fr 1.7fr;gap:90px}.faq>div>p{font-size:14px}.faq details{border-bottom:1px solid #d1d6cf}.faq summary{cursor:pointer;list-style:none;padding:20px 32px 20px 0;position:relative;font-size:15px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:2px;font-size:21px;top:15px;font-weight:400}.faq details[open] summary:after{content:'−'}.faq details p{font-size:14px;max-width:630px;padding-right:25px}.contact-section{display:grid;grid-template-columns:1.15fr 1fr;gap:75px;background:#eeeae0;max-width:none;padding:90px max(5%,calc((100vw - 1192px)/2))}.contact-copy>p{max-width:480px}.big-phone{font-size:37px;font-family:Georgia;letter-spacing:-.02em;display:inline-block;margin:15px 0 26px}.contact-copy>.small{margin-top:23px}.stay-form{background:#faf8f3;padding:36px;align-self:center;border-top:3px solid #b09b7a}.stay-form h3{font-family:Georgia;font-size:31px;margin-bottom:12px}.stay-form>p{font-size:12px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.form-row label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#526369}.form-row input,.form-row select{width:100%;min-width:0;padding:10px;background:transparent;border:1px solid #bec9c7;border-radius:0;color:#163947;min-height:45px;font-size:14px}.stay-form .button{width:100%}#form-status{color:#ad4d35;margin:0}footer{background:#112e39;color:#f7f2e7;padding:60px 5% 22px}footer p{color:#b9c8cd;font-size:13px}footer .brand-name{font-size:29px}footer .brand-sub{font-size:9px}footer .eyebrow{color:#e8d5b4;margin-bottom:17px}footer a:not(.brand){font-size:12px}footer .footer-phone{font-size:24px!important;font-family:Georgia}.footer-main{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:60px}.footer-main>div:first-child>p{margin-top:24px}.footer-bottom{border-top:1px solid #42606c;display:flex;justify-content:space-between;gap:24px;margin-top:45px;padding-top:21px;font-size:10px;color:#becacd}.footer-bottom a{font-size:10px!important}.floating-wa{position:fixed;bottom:24px;right:26px;background:#163947;color:white;padding:12px 20px;z-index:9;border:1px solid #819ba6;border-radius:35px;font-size:13px;box-shadow:0 3px 20px #0002}.floating-wa span{font-size:20px;margin-right:5px}.mobile-contact{display:none}.skip{position:fixed;top:4px;left:4px;transform:translateY(-150%);z-index:100;background:white;padding:10px}.skip:focus{transform:none}:focus-visible{outline:3px solid #ba813f;outline-offset:5px}.apartment-title{padding-top:45px;padding-bottom:35px;display:grid;grid-template-columns:1.7fr 1fr;gap:25px;align-items:end}.back-link{grid-column:1/-1;font-size:12px;margin-bottom:15px;color:#61747c}.apartment-title h1{font-size:clamp(70px,8vw,115px);margin-bottom:14px;color:var(--accent)}.apartment-title .eyebrow{margin-bottom:14px}.apartment-motto{font-family:Georgia;font-style:italic;font-size:23px;color:#607176;margin:0}.apartment-summary{font-size:14px;line-height:2;border-left:1px solid #c8d0cb;padding-left:30px;margin-bottom:12px}.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:215px 215px;gap:14px;padding-top:12px;padding-bottom:35px}.gallery-photo{position:relative;border:0;padding:0;background:#e5e5df;overflow:hidden}.gallery-photo:first-child{grid-row:1/3}.gallery-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-photo:hover img{transform:scale(1.03)}.gallery-photo span{position:absolute;bottom:10px;right:10px;font-size:10px;background:#122e39cf;color:white;padding:4px 9px}.apartment-description{display:grid;grid-template-columns:1.6fr 1fr;gap:75px;padding-top:35px}.apartment-description h2{color:var(--accent)}.apartment-description .actions{margin-top:30px}.apartment-features{border-top:2px solid var(--accent);padding:30px;background:#f0ece3}.apartment-features h3{font-family:Georgia;font-size:26px}.apartment-features ul{list-style:none;margin:0 0 20px;padding:0}.apartment-features li{font-size:14px;border-bottom:1px solid #d4d6ce;padding:9px 0}.apartment-features li:before{content:'✓';color:var(--accent);padding-right:15px}.laundry-banner{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;padding-top:20px}.laundry-banner img{width:100%;height:330px;object-fit:cover}.information{max-width:1000px;padding-top:70px}.information h2{font-size:30px;margin-top:42px}.information h1{margin-bottom:50px}.information a{border-bottom:1px solid}.information p{max-width:740px}dialog{border:0;background:#faf8f3;max-width:95vw;width:1050px;max-height:94vh;padding:50px 22px 20px}dialog::backdrop{background:#0b2029ec}dialog figure{margin:0}dialog figure img{margin:auto;max-height:70vh;width:auto;object-fit:contain}dialog figcaption{font-size:13px;text-align:center;margin-top:14px}.close-dialog{position:absolute;top:10px;right:18px;border:0;background:transparent;padding:5px;font-size:13px;color:#163947}.gallery-controls{display:flex;align-items:center;justify-content:center;gap:25px;margin-top:12px;font-size:12px}.gallery-controls button{border:1px solid #b5c5c6;background:transparent;padding:4px 20px;color:#163947}
@media(min-width:1600px){.hero-content{padding-left:calc((100vw - 1320px)/2 + 64px)}.hero-note{left:calc((100vw - 1320px)/2 + 64px)}}
@media(max-width:1050px){.section{padding:70px 35px}.site-header nav{gap:23px}.hero-content{padding:90px 5%}.hero h1{font-size:60px}.intro{gap:35px}.card-image img{height:260px}.section-heading{gap:30px}.services-grid{gap:22px}.camino-section>div{padding:60px 35px}.contact-section{gap:35px}.faq{gap:40px}.quick-facts span+span{padding-left:20px}.gallery{padding-top:10px;padding-bottom:25px}.apartment-description{gap:40px}.apartment-title{padding-top:35px;padding-bottom:20px}.footer-main{gap:35px}.laundry-banner{padding-top:15px}}
@media(max-width:700px){html{scroll-padding-top:87px}body{font-size:15px;padding-bottom:56px}.section{padding:56px 24px}.site-header{height:83px;padding:0 24px}.brand-name{font-size:23px}.brand-sub{font-size:8px;margin-top:8px}.menu-toggle{display:flex;gap:13px;align-items:center;border:0;background:transparent;font-size:12px;color:#163947;padding:10px 0}.menu-toggle span{font-size:19px}.site-header nav{display:none;position:absolute;top:83px;left:0;right:0;background:#faf8f3;border-bottom:1px solid #c2cec9;padding:20px 24px;flex-direction:column;align-items:flex-start;gap:13px}.site-header nav.open{display:flex;width:100%}.nav-contact{border:0}.hero{height:auto;min-height:600px}.hero-content{padding:85px 24px 100px}.hero h1{font-size:46px}.hero-content .eyebrow{font-size:9px;max-width:280px;line-height:2}.hero p{font-size:15px}.hero-photo{object-position:58% center}.hero:before{background:linear-gradient(90deg,#0e1f20d6,#0e1f2080),linear-gradient(0deg,#0e1f2050,transparent)}.hero .actions{align-items:flex-start;flex-direction:column;gap:15px;margin-top:27px}.hero .ghost{padding:10px 0;border:0;font-size:12px}.hero-note{left:24px;right:24px;font-size:8px;bottom:25px}.hero-note a{display:none}.quick-facts{display:grid;grid-template-columns:1fr;gap:6px;padding:22px 24px;font-size:11px;text-align:center}.quick-facts span+span{border:0;padding:0}.intro{display:block;padding-bottom:30px}.intro>.eyebrow{padding-top:0;margin-bottom:25px}.intro h2{font-size:35px}.intro p{font-size:14px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{max-width:none;margin-top:22px;font-size:14px}.apartments{padding-top:35px}.apartment-grid{grid-template-columns:1fr;gap:32px}.card-image img{height:310px}.card-copy{padding:21px 0}.card-copy h3{font-size:38px}.services-grid{grid-template-columns:1fr 1fr;gap:30px 24px;margin-top:35px}.services-grid h3{font-size:16px}.services-grid p{font-size:12px}.service-icon{margin-bottom:17px;font-size:32px}.camino-section{grid-template-columns:1fr;margin:0}.camino-section>img{min-height:0;height:300px}.camino-section>div{padding:48px 24px 55px}.camino-section h2{font-size:38px}.camino-section .actions{gap:14px}.camino-section .ghost{border:0;padding-left:0}.faq{grid-template-columns:1fr;gap:15px}.faq h2 br{display:none}.faq summary{font-size:14px}.contact-section{grid-template-columns:1fr;gap:25px}.contact-copy h2{font-size:36px}.big-phone{font-size:34px}.stay-form{padding:28px 20px}.form-row{gap:12px}.footer-main{grid-template-columns:1fr;gap:30px}.footer-bottom{flex-direction:column;gap:10px;margin-top:28px}.footer-bottom>span:last-child{display:none}footer{padding:48px 24px 26px}.floating-wa{display:none}.mobile-contact{display:grid;grid-template-columns:1.3fr 1fr;position:fixed;left:0;bottom:0;right:0;z-index:12;min-height:56px;background:#163947;color:white;box-shadow:0 -2px 16px #0001;padding-bottom:env(safe-area-inset-bottom)}.mobile-contact a{display:grid;place-items:center;font-size:12px;min-height:56px}.mobile-contact a+ a{background:#f3e9d7;color:#163947}.apartment-title{grid-template-columns:1fr;gap:20px;padding-top:32px;padding-bottom:25px}.apartment-title h1{font-size:77px}.back-link{margin-bottom:0}.apartment-summary{border:0;padding:0;font-size:12px;line-height:1.8;margin:0}.gallery{padding:0 24px 25px;grid-template-columns:1fr 1fr;grid-template-rows:290px 140px 140px;gap:10px}.gallery-photo:first-child{grid-row:auto;grid-column:1/-1}.apartment-description{grid-template-columns:1fr;gap:30px;padding-top:20px}.apartment-description h2{font-size:36px}.apartment-description .actions{gap:12px}.laundry-banner{grid-template-columns:1fr;gap:25px;padding-top:15px}.laundry-banner img{height:270px}.information{padding-top:45px}.information h1{font-size:45px}.information h2{font-size:28px}dialog{max-width:96vw;padding:45px 12px 20px}dialog figure img{max-height:62vh}.button{padding:14px 19px}.hero .button{padding:16px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Keep additional gallery photos at consistent heights. */
.gallery{grid-auto-rows:215px}
@media(max-width:700px){.gallery{grid-auto-rows:140px}}
