:root{--ink:#303b31;--olive:#424e3e;--paper:#faf9f5;--sand:#eeece4;--line:#dcded3;--muted:#687064}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b58660;outline-offset:5px}.skip{position:absolute;top:-100px;z-index:99;background:white;padding:12px}.skip:focus{top:0}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:var(--paper);position:relative;z-index:10}.brand{display:flex;gap:16px;align-items:center;font-size:14px;letter-spacing:2.5px;font-weight:600;line-height:1.5}.brand small{display:block;font-size:8px;letter-spacing:2.8px;margin-top:5px;font-weight:400}.monogram{font-family:Georgia,serif;font-size:42px;letter-spacing:-11px;line-height:1;display:block;width:46px;font-weight:400}.monogram span{position:relative;top:10px}nav{display:flex;align-items:center;gap:30px;font-size:12px}nav a:hover,.textlink:hover{color:#9c7354}.navcta{padding:12px 20px;background:var(--olive);color:white}.navcta span{margin-left:20px}.menu{display:none}.hero{height:min(760px,78vw);min-height:600px;position:relative;color:white;margin:0 22px}.hero>img{width:100%;height:100%;object-fit:cover;object-position:center 55%}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,27,21,.66),rgba(17,27,21,.05) 85%)}.hero-copy{position:absolute;left:6%;top:17%;max-width:600px}.eyebrow{font-size:10px;letter-spacing:2.6px;font-weight:600;margin:0 0 24px}.hero h1{font-family:Georgia,serif;font-size:clamp(48px,5.2vw,79px);font-weight:400;line-height:1.1;letter-spacing:-2px;margin:0 0 28px}em{font-weight:400}h2{font-family:Georgia,serif;font-size:clamp(36px,4vw,57px);font-weight:400;line-height:1.12;letter-spacing:-1.5px;margin:0 0 25px}h3{font-family:Georgia,serif;font-weight:400;font-size:26px;line-height:1.2}.hero-copy>p:not(.eyebrow){max-width:395px;font-size:16px;line-height:1.8;margin-bottom:30px}.button{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:17px 24px;font-size:12px;font-weight:600;letter-spacing:.3px;border:0;cursor:pointer;width:fit-content;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px);background:#e2dac9}.cream{background:#f6f3e9;color:#354032}.button span{font-size:20px;font-weight:400}.micro{display:block;font-size:10px;letter-spacing:.4px;margin-top:14px}.hero-bottom{position:absolute;bottom:33px;left:6%;right:6%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px}.hero-bottom a span{margin-left:24px}.image-note{position:absolute;bottom:8px;right:16px;font-size:8px;opacity:.8}.ribbon{display:flex;justify-content:center;align-items:center;gap:58px;font-size:11px;letter-spacing:.7px;border-bottom:1px solid var(--line);padding:27px 20px}.ribbon i{font-size:18px;font-style:normal;color:#a68c6b}.section{padding:95px 7.5%;scroll-margin-top:20px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-bottom:45px}.intro-right{max-width:500px}.lead{font-size:20px;line-height:1.6}.intro-right .lead{margin-top:0}p{margin-top:0;color:inherit}.intro-right>p:not(.lead){color:var(--muted)}.textlink{display:inline-flex;gap:40px;align-items:center;border-bottom:1px solid #9caa92;padding:9px 0;font-size:12px}.services{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding-top:30px}.services article{border-top:1px solid #a8af9e;padding-top:25px}.number,.tag{font-size:9px;letter-spacing:1.8px}.services h3{font-size:23px;min-height:56px}.services p{font-size:13px;color:var(--muted)}.services a{font-size:11px;border-bottom:1px solid var(--line);padding-bottom:6px}.packages{background:var(--sand)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}.section-head>p,.section-head>div+div{font-size:13px;max-width:340px}.section-head h2{margin-bottom:0}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.package-grid article{padding:38px 30px;background:var(--paper);border:1px solid #dcdfd2}.package-grid h3{font-size:38px;margin:24px 0 13px}.package-grid article>p{font-size:13px}.package-grid ul{list-style:none;padding:0;margin:28px 0 38px;font-size:12px}.package-grid li{padding:10px 0;border-top:1px solid #dadfd1}.package-grid li:before{content:'+';margin-right:10px}.package-grid .featured{background:var(--olive);color:#f9f7f0;border-color:var(--olive)}.featured li{border-color:#69735f}.outline{border:1px solid #b4bca8;background:transparent;width:100%}.package-grid .cream{width:100%}.fine{font-size:10px;line-height:1.7;opacity:.8}.packages>.fine{margin:23px 0 0;max-width:900px}.inspiration-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:28px}.concept{padding:0;border:none;background:none;text-align:left;color:var(--ink);cursor:pointer}.concept img{width:100%;height:410px;object-fit:cover;display:block;transition:filter .2s}.concept:hover img{filter:brightness(.94)}.concept>span{display:flex;justify-content:space-between;align-items:center;margin-top:18px;font-family:Georgia,serif;font-size:24px}.concept small{display:block;font-family:Arial,sans-serif;font-size:9px;letter-spacing:1.7px;margin-bottom:8px}.concept b{font-size:26px;font-weight:400}.palette{display:flex;align-items:center;gap:35px;margin-top:40px;padding-top:24px;border-top:1px solid var(--line);font-size:11px}.palette>span{font-size:9px;letter-spacing:1.7px;margin-right:auto}.palette div{display:flex;align-items:center;gap:10px}.palette i{display:inline-block;width:22px;height:22px;border-radius:50%}.process{background:#e7e9df}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:65px;margin-top:48px}.steps article{border-top:1px solid #a8b19f;padding-top:25px}.steps article>span{font-family:Georgia,serif;font-size:32px;color:#87927b}.steps h3{font-size:24px}.steps p{font-size:13px}.about{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.about-art{min-height:470px;background:#e9e2d5;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center}.arch{width:200px;height:250px;border:1px solid #99a18b;border-radius:110px 110px 0 0;display:grid;place-content:center;font:120px Georgia,serif;letter-spacing:-25px;padding-right:25px;color:#4e5a45}.about-art>p{letter-spacing:5px;font-size:15px;margin:35px 0 12px}.about-art small{font-size:8px;letter-spacing:2px}.about>div+div>p:not(.eyebrow):not(.lead){font-size:13px;color:var(--muted)}.areas{border-top:1px solid var(--line);text-align:center;padding-top:70px;padding-bottom:70px}.areas>p:not(.eyebrow){max-width:650px;margin:0 auto 30px;font-size:14px;color:var(--muted)}.area-list{display:flex;justify-content:center;gap:30px;font-size:11px}.area-list span+span:before{content:'·';margin-right:30px}.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:10%;background:var(--sand)}details{border-top:1px solid #cbd0c2;padding:20px 0}details:last-child{border-bottom:1px solid #cbd0c2}summary{cursor:pointer;font-size:14px;list-style:none;display:flex;justify-content:space-between;gap:20px}summary:after{content:'+';font-size:18px}details[open] summary:after{content:'−'}details p{font-size:13px;color:var(--muted);margin:18px 25px 0 0}.contact{background:var(--olive);color:#f5f3e9;display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact>div>p:not(.eyebrow){max-width:380px}.contact .lead{margin:0 0 10px}.contact-link{display:block;margin:22px 0;font-size:14px;width:fit-content;border-bottom:1px solid #77816c}form label{display:block;font-size:11px;letter-spacing:.3px;margin-bottom:18px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #8f9785;border-radius:0;background:transparent;color:inherit;padding:10px 0;font-size:13px}input::placeholder,textarea::placeholder{color:#d7d9cc;opacity:.75}select option{color:#303b31;background:#faf9f5}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}textarea{resize:vertical}.check{display:flex;gap:10px;align-items:flex-start;font-size:10px;margin:23px 0}.check input{width:15px;min-width:15px;margin-top:3px;accent-color:#bec7b1}.check a{text-decoration:underline}form .button{width:100%;margin-bottom:13px}form .fine{margin-bottom:7px}.email-alternative{color:inherit;border:0;background:none;padding:0;font-size:11px;text-decoration:underline;cursor:pointer}#form-status{font-size:11px;margin:10px 0 0}footer{display:flex;gap:30px;align-items:center;justify-content:space-between;padding:45px 7.5%}footer>div{display:flex;gap:22px;font-size:11px}footer>p{font-size:9px;color:var(--muted);margin:0}dialog{border:0;background:var(--paper);color:var(--ink);max-width:850px;padding:0;width:90%;max-height:90vh;overflow:auto}dialog::backdrop{background:#172317ba}dialog>img{width:100%;max-height:45vh;object-fit:cover}dialog>div{padding:25px 35px}dialog h2{font-size:34px}dialog .close{position:absolute;right:12px;top:12px;border:0;background:var(--paper);padding:9px 15px;cursor:pointer}dialog p{font-size:13px}dialog .eyebrow{font-size:10px;margin-bottom:12px}
@media(min-width:1600px){.section{padding-left:max(7.5%,calc((100vw - 1350px)/2));padding-right:max(7.5%,calc((100vw - 1350px)/2))}}@media(max-width:1000px){nav{gap:16px}.brand{font-size:11px}.services{grid-template-columns:1fr 1fr}.hero{min-height:600px}.package-grid article{padding:28px 20px}.package-grid .button{font-size:10px;padding:15px}.ribbon{gap:20px}.concept img{height:330px}.contact{gap:6%}.steps{gap:30px}.section{padding:70px 6%}.hero-copy{top:16%}}@media(max-width:720px){header{height:80px;padding:0 6%}.brand{font-size:11px;gap:12px}.brand small{font-size:7px}.monogram{font-size:35px;width:38px}.menu{display:flex;gap:12px;background:none;border:0;color:var(--ink);font-size:12px}nav{display:none;position:absolute;left:0;right:0;top:80px;background:var(--paper);padding:25px 6%;align-items:stretch}nav.open{display:flex;flex-direction:column;gap:20px}.hero{margin:0 10px;height:650px;min-height:0}.hero>img{object-position:57% center}.shade{background:linear-gradient(90deg,#132318a8,#14241c36)}.hero-copy{left:7%;right:7%;top:14%}.hero h1{font-size:48px;letter-spacing:-1.8px}.hero .eyebrow{font-size:8px;letter-spacing:1.8px}.hero-copy>p:not(.eyebrow){font-size:14px;max-width:290px}.hero-bottom{font-size:7px;letter-spacing:1px;left:7%;right:7%}.ribbon{gap:10px;padding:22px 12px;font-size:8px;letter-spacing:0}.ribbon i{font-size:13px}.section{padding:60px 7%}.intro{grid-template-columns:1fr;gap:15px;padding-bottom:25px}.intro-right .lead{font-size:18px}h2{font-size:39px}.services{gap:28px 22px;padding-top:20px}.services h3{font-size:23px;min-height:55px}.services p{font-size:12px}.number{font-size:8px}.section-head{display:block}.section-head>p,.section-head>div+div{margin-top:25px}.package-grid{grid-template-columns:1fr;gap:18px}.package-grid article{padding:30px}.package-grid ul{margin:24px 0}.package-grid .button{font-size:12px}.inspiration-grid{grid-template-columns:1fr}.concept img{height:300px}.concept>span{font-size:24px}.palette{flex-wrap:wrap;gap:15px;font-size:10px}.palette>span{flex-basis:100%}.palette i{width:18px;height:18px}.steps{grid-template-columns:1fr;gap:20px;margin-top:30px}.steps article{padding-top:16px}.steps h3{margin:8px 0 12px}.about{grid-template-columns:1fr;gap:40px}.about-art{min-height:350px;grid-row:2}.arch{height:200px;width:160px;font-size:100px}.area-list{flex-wrap:wrap;gap:14px}.area-list span+span:before{display:none}.area-list span{padding:4px 10px;border:1px solid var(--line)}.faq{grid-template-columns:1fr;gap:15px}summary{font-size:13px}.contact{grid-template-columns:1fr;gap:40px}.field-row{gap:18px}footer{align-items:flex-start;flex-direction:column;padding:35px 7%;gap:28px}.contact h2{font-size:40px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Mediterranean brand identity — sun, palms and sea */
header{height:116px}.brand-logo{display:block;width:330px;height:auto;max-width:100%;object-fit:contain}.about-logo{display:block;width:260px;height:260px;object-fit:contain;border-radius:50%}footer .brand-logo{width:290px}.about-art{background:#eeece4}.about-art>p{margin-top:24px}@media(max-width:1000px){.brand-logo{width:270px}nav{gap:16px;font-size:11px}}@media(max-width:720px){header{height:90px}.brand-logo{width:235px}nav{top:90px}.about-logo{width:220px;height:220px}footer .brand-logo{width:275px}}@media(max-width:380px){.brand-logo{width:205px}.menu{gap:6px;font-size:11px}}

.extended-services{background:#f1f0e9}.extended-heading{padding-bottom:15px;padding-top:65px}.extended-heading>p:last-child{max-width:640px;color:var(--muted);font-size:14px}.extended-services .services{padding-top:20px;padding-bottom:25px}.extended-services .number{font-size:8px;letter-spacing:1.2px}.extended-note{margin:0;padding:0 7.5% 45px;max-width:1100px}@media(max-width:720px){.extended-heading{padding-top:45px}.extended-note{padding-left:7%;padding-right:7%}.extended-services .number{font-size:8px;letter-spacing:.5px}}

/* Service and package photography */
.service-photo,.package-photo{margin:0 0 23px;position:relative;overflow:hidden;background:#e5e1d7}.service-photo img,.package-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.service-photo figcaption,.package-photo figcaption{position:absolute;bottom:7px;left:7px;background:rgba(250,249,245,.92);color:#424e3e;font-size:8px;letter-spacing:.1px;padding:2px 6px;line-height:1.6}.services article{padding-top:0;border-top:0}.services h3{margin-top:16px}.package-photo{margin:-8px -1px 28px}.package-photo img{aspect-ratio:3/2}.services .number{display:block;min-height:29px;line-height:1.6}.services a{display:inline-block}.package-grid .featured .package-photo figcaption{color:#424e3e}@media(max-width:720px){.services{grid-template-columns:1fr;gap:38px}.service-photo{margin-bottom:18px}.service-photo img{aspect-ratio:3/2}.services h3{min-height:0;margin-top:10px}.services .number{min-height:0}.services p{font-size:13px}.extended-services .number{font-size:9px;letter-spacing:1px}.package-photo{margin:0 0 25px}}

/* Before-and-after design proposals */
.design-proposals{background:#f0f0e8;border-top:1px solid var(--line)}.proposal-intro{font-size:12px;color:#606b59;max-width:760px;margin:0 0 40px}.proposal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.proposal-card{padding:28px;background:var(--paper);border:1px solid #dce0d1}.proposal-top{display:flex;justify-content:space-between;align-items:start;gap:15px}.proposal-top .eyebrow{font-size:9px;letter-spacing:1.3px;margin:0;max-width:65%}.proposal-type{font-size:7px;letter-spacing:1px;color:#657256;white-space:nowrap;border-bottom:1px solid #aeb99f;padding-bottom:3px}.proposal-card h3{font-size:27px;line-height:1.25;margin:18px 0 24px;min-height:68px}.proposal-comparison{margin:0 -28px 25px;background:#e6e4d9}.comparison-labels{display:grid;grid-template-columns:1fr 1fr;font-size:9px;font-weight:600;letter-spacing:1.8px;background:#e4e8db}.comparison-labels span{padding:10px 15px}.comparison-labels span+span{border-left:1px solid #c8d0bd}.proposal-comparison img{display:block;width:100%;height:auto;object-fit:contain}.proposal-card dl{margin:0}.proposal-card dl>div{margin:15px 0}.proposal-card dt{font-size:8px;font-weight:600;letter-spacing:1.3px;margin-bottom:5px}.proposal-card dd{margin:0;color:var(--muted);font-size:12px;line-height:1.8}.proposal-card .textlink{font-size:11px;margin-top:10px;gap:20px}@media(max-width:720px){.proposal-grid{grid-template-columns:1fr;gap:24px}.proposal-card{padding:24px}.proposal-card h3{min-height:0;font-size:27px}.proposal-comparison{margin-left:-24px;margin-right:-24px}.proposal-top .eyebrow{font-size:8px}.proposal-intro{font-size:11px}.comparison-labels{font-size:8px}}

/* Legal pages and first-layer privacy information */
.legal-content{max-width:920px;margin:0 auto;padding:60px 35px 80px}.legal-content h1{font:normal clamp(38px,5vw,55px)/1.15 Georgia,serif;letter-spacing:-1px;margin:0 0 40px}.legal-content h2{font:normal 27px/1.3 Georgia,serif;letter-spacing:-.3px;margin:38px 0 16px}.legal-content p,.legal-content li{font-size:14px;line-height:1.9}.legal-content a,.privacy-summary a{text-decoration:underline;text-underline-offset:3px}.legal-details{display:grid;grid-template-columns:230px 1fr;gap:12px 25px;background:#eeefe6;padding:28px;margin:25px 0}.legal-details dt{font-size:12px;font-weight:600}.legal-details dd{margin:0;font-size:13px;overflow-wrap:anywhere}.legal-footer{justify-content:center;flex-wrap:wrap;border-top:1px solid var(--line);font-size:12px;gap:25px}.privacy-summary{font-size:10px;line-height:1.8;margin:20px 0;color:#eeeee4}footer>div{flex-wrap:wrap}.legal-header .textlink{white-space:nowrap}@media(max-width:720px){.legal-content{padding:40px 7% 60px}.legal-details{grid-template-columns:1fr;gap:4px;padding:22px}.legal-details dd{margin-bottom:13px}.legal-header .brand-logo{width:185px}.legal-header .textlink{font-size:10px}.legal-footer{flex-direction:row;gap:20px}.legal-content h2{font-size:25px}.privacy-summary{font-size:10px}}
