/* Portfolio demo websites */
.demo-site{margin:0;background:#fff;color:#111;font-family:"Manrope",sans-serif}
.demo-site *{box-sizing:border-box}
.demo-site a{text-decoration:none;color:inherit}
.demo-site img{display:block;width:100%;height:100%;object-fit:cover}
.demo-site .demo-back{position:fixed;left:18px;bottom:18px;z-index:50;background:rgba(15,15,15,.82);color:#fff;padding:10px 14px;border-radius:999px;font-size:12px;backdrop-filter:blur(12px);box-shadow:0 8px 30px rgba(0,0,0,.18)}
.demo-nav{height:82px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;gap:28px;position:absolute;inset:0 0 auto;z-index:20}
.demo-nav nav{display:flex;gap:28px;font-size:13px}
.demo-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:700}
.demo-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.demo-footer{display:flex;justify-content:space-between;gap:20px;padding:26px 4vw;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.demo-site h1,.demo-site h2,.demo-site h3,.demo-site p{margin-top:0}

/* EMBER */
.demo-ember{background:#f3ede4;color:#2a211a;font-family:"DM Sans",sans-serif}
.demo-ember .demo-back{background:#33271e}
.ember-nav{color:#f7f1e9}
.demo-logo{display:flex;flex-direction:column;line-height:.85}
.demo-logo span{font-family:"Cormorant Garamond",serif;font-size:26px;letter-spacing:.08em;font-weight:700}
.demo-logo small{font-size:8px;letter-spacing:.36em;margin-top:7px}
.ember-nav nav a{opacity:.8}
.demo-pill{border:1px solid rgba(255,255,255,.55);padding:10px 16px;border-radius:999px;font-size:12px}
.ember-hero{min-height:760px;display:grid;grid-template-columns:1.02fr .98fr;background:#412f22;color:#f8f1e8}
.ember-copy{padding:170px 7vw 80px;display:flex;flex-direction:column;justify-content:center}
.ember-copy h1{font:500 clamp(64px,7vw,118px)/.86 "Cormorant Garamond",serif;letter-spacing:-.035em;max-width:760px;margin:24px 0 28px}
.ember-copy>p{font-size:18px;line-height:1.65;max-width:600px;color:#e5d8ca}
.demo-primary{display:inline-flex;background:#f0c46c;color:#2a211a;padding:15px 22px;border-radius:999px;font-weight:700;font-size:13px}
.demo-text-link{font-size:13px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:4px}
.ember-notes{display:flex;gap:22px;flex-wrap:wrap;margin-top:54px;color:#cdbcab;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.ember-hero-image{position:relative;min-height:760px}
.ember-stamp{position:absolute;right:32px;bottom:32px;width:94px;height:94px;border-radius:50%;background:#f0c46c;color:#2b211a;display:grid;place-items:center;text-align:center;font:700 15px/1.1 "DM Sans",sans-serif;transform:rotate(8deg)}
.ember-marquee{overflow:hidden;background:#f0c46c;padding:15px 0;white-space:nowrap;font:700 12px/1 "DM Sans",sans-serif;letter-spacing:.15em}
.ember-marquee div{min-width:max-content;animation:embermove 24s linear infinite}
@keyframes embermove{to{transform:translateX(-50%)}}
.ember-story{padding:120px 7vw;display:grid;grid-template-columns:1.1fr .9fr;gap:10vw}
.ember-story h2{font:500 clamp(46px,5vw,82px)/.96 "Cormorant Garamond",serif;margin:20px 0 0;max-width:760px}
.ember-story p{font-size:18px;line-height:1.8;color:#5d4d40}
.ember-feature{margin:0 4vw 120px;min-height:620px;position:relative}
.ember-feature img{min-height:620px}
.ember-feature-card{position:absolute;right:4vw;bottom:-40px;background:#f3ede4;padding:42px;width:min(390px,82%);box-shadow:0 24px 60px rgba(43,32,23,.15)}
.ember-feature-card>span,.ember-feature-card small{font-size:10px;text-transform:uppercase;letter-spacing:.18em}
.ember-feature-card strong{display:block;font:500 42px/1 "Cormorant Garamond",serif;margin:12px 0 18px}
.ember-feature-card p{color:#6a594b;line-height:1.6}
.ember-menu{padding:70px 7vw 120px}
.ember-menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#cfc1b2;margin-top:28px}
.ember-menu article{background:#f3ede4;padding:0 30px 30px;min-height:410px;overflow:hidden}
.ember-menu-image{width:calc(100% + 60px);height:220px;margin:0 -30px 28px;object-fit:cover}
.ember-menu article>span{font-size:10px;letter-spacing:.15em}
.ember-menu h3{font:500 34px/1.05 "Cormorant Garamond",serif;margin:18px 0 14px}
.ember-menu p{color:#6a594b;line-height:1.6}
.ember-menu strong{font-size:12px}
.ember-visit{margin:0 4vw 80px;background:#2c2119;color:#f8f1e8;padding:70px;display:flex;align-items:end;justify-content:space-between;gap:40px}
.ember-visit h2{font:500 clamp(48px,6vw,88px)/.95 "Cormorant Garamond",serif;margin:18px 0 0}
.ember-visit p{line-height:1.7;color:#cfbfae}
.demo-ember .demo-footer{background:#1f1712;color:#c9baa9}

/* AURELIA */
.demo-aurelia{background:#f5f2eb;color:#171713;font-family:"Manrope",sans-serif}
.demo-aurelia .demo-back{background:#12201b}
.aurelia-nav{color:#fff}
.aurelia-logo{font-family:"Cormorant Garamond",serif;font-size:24px;letter-spacing:.14em}
.aurelia-logo span{font:500 8px/1 "Manrope",sans-serif;display:block;letter-spacing:.34em;margin-top:7px}
.aurelia-nav nav a{font-size:11px;text-transform:uppercase;letter-spacing:.12em;opacity:.84}
.aurelia-contact{font-size:11px;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid rgba(255,255,255,.75);padding-bottom:5px}
.aurelia-hero{height:min(900px,100vh);min-height:720px;position:relative;background-image:var(--hero);background-position:center;background-size:cover;color:#fff}
.aurelia-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,15,12,.72),rgba(9,15,12,.08) 72%),linear-gradient(0deg,rgba(9,15,12,.25),transparent 45%)}
.aurelia-hero-copy{position:absolute;left:7vw;bottom:10vh;max-width:870px}
.aurelia-hero h1{font:400 clamp(66px,7.5vw,126px)/.88 "Cormorant Garamond",serif;letter-spacing:-.04em;margin:22px 0 28px}
.aurelia-hero p{max-width:650px;font-size:17px;line-height:1.75;color:#ecebe6}
.aurelia-btn{display:inline-flex;background:#f1eadc;color:#142019;padding:15px 22px;text-transform:uppercase;font-size:10px;letter-spacing:.14em}
.aurelia-link{font-size:11px;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid #fff;padding-bottom:5px}
.aurelia-index{position:absolute;right:4vw;bottom:8vh;display:flex;gap:16px;align-items:center;font-size:10px;text-transform:uppercase;letter-spacing:.16em}
.aurelia-index span:first-child{font-family:"Cormorant Garamond",serif;font-size:50px;font-weight:400}
.aurelia-intro{padding:140px 8vw;text-align:center}
.aurelia-intro>p{font-size:10px;letter-spacing:.2em}
.aurelia-intro h2{font:400 clamp(50px,5.5vw,92px)/.98 "Cormorant Garamond",serif;max-width:1100px;margin:28px auto 58px}
.aurelia-intro-row{display:flex;justify-content:center;gap:36px;flex-wrap:wrap;font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:#66675f}
.aurelia-property{display:grid;grid-template-columns:1.15fr .85fr;min-height:720px;background:#15231d;color:#f1eee7}
.aurelia-property-image img{min-height:720px}
.aurelia-property-copy{padding:90px 6vw;display:flex;flex-direction:column;justify-content:center}
.aurelia-property h2{font:400 clamp(48px,5vw,80px)/.95 "Cormorant Garamond",serif;margin:20px 0 8px}
.aurelia-property-copy>p{color:#c7cdc8}
.aurelia-specs{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:50px 0;padding:28px 0;border-top:1px solid #405049;border-bottom:1px solid #405049}
.aurelia-specs span{font-size:10px;text-transform:uppercase;letter-spacing:.1em}
.aurelia-specs strong{display:block;font:400 28px/1 "Cormorant Garamond",serif;margin-bottom:8px}
.aurelia-description{line-height:1.8;max-width:540px}
.aurelia-btn.dark{background:#efe9dc;color:#142019;align-self:flex-start;margin-top:24px}
.aurelia-services{display:grid;grid-template-columns:repeat(3,1fr);padding:100px 7vw;gap:1px;background:#d9d4c9}
.aurelia-services>div{background:#f5f2eb;padding:44px}
.aurelia-services span{font-size:10px}
.aurelia-services h3{font:400 42px/1 "Cormorant Garamond",serif;margin:48px 0 16px}
.aurelia-services p{color:#66675f;line-height:1.7}
.aurelia-contact-section{margin:0 4vw 80px;background:#9a8b6b;color:#fff;padding:78px;display:flex;justify-content:space-between;align-items:end;gap:40px}
.aurelia-contact-section h2{font:400 clamp(48px,6vw,84px)/.95 "Cormorant Garamond",serif;margin:18px 0 0}
.aurelia-contact-section .aurelia-btn{background:#15231d;color:#fff !important;border:1px solid #15231d;font-weight:700}
.aurelia-contact-section .aurelia-btn:hover{background:#0c1511;color:#fff !important}
.demo-aurelia .demo-footer{background:#15231d;color:#bfc8c1}

/* APEX */
.demo-apex{background:#0a0a0a;color:#f6f6f3;font-family:"Manrope",sans-serif}
.demo-apex .demo-back{background:#e8ff00;color:#080808}
.apex-nav{color:#fff;border-bottom:1px solid rgba(255,255,255,.13)}
.apex-logo{font-weight:800;font-size:24px;letter-spacing:.08em}
.apex-logo span{color:#dfff00;margin-left:7px}
.apex-nav nav a{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:#c9c9c5}
.apex-book{background:#dfff00;color:#090909;padding:12px 16px;font-size:10px;font-weight:800;letter-spacing:.1em}
.apex-hero{min-height:820px;background-image:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.1)),var(--hero);background-size:cover;background-position:center;position:relative;display:flex;align-items:end;padding:0 6vw 9vh;overflow:hidden}
.apex-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,transparent 5%,#000 45%)}
.apex-hero-copy{position:relative;z-index:2;max-width:950px}
.apex-hero h1{font:800 clamp(68px,9vw,150px)/.82 "Archivo Black",sans-serif;letter-spacing:-.055em;text-transform:uppercase;margin:20px 0 28px}
.apex-hero p{font-size:17px;line-height:1.7;color:#d0d0cd;max-width:600px}
.apex-primary{display:inline-flex;background:#dfff00;color:#080808;padding:16px 22px;font-weight:800;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.apex-secondary{display:inline-flex;border:1px solid rgba(255,255,255,.5);padding:15px 22px;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.apex-stat{position:absolute;right:5vw;bottom:8vh;z-index:2;display:flex;align-items:end;gap:12px;max-width:210px}
.apex-stat strong{font:800 78px/.8 "Archivo Black",sans-serif;color:#dfff00}
.apex-stat span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#c5c5c1}
.apex-strip{display:flex;justify-content:space-around;gap:25px;overflow:hidden;white-space:nowrap;background:#dfff00;color:#0a0a0a;padding:14px;font-size:10px;font-weight:800;letter-spacing:.13em}
.apex-services{padding:110px 6vw}
.apex-section-head{display:grid;grid-template-columns:.35fr 1.65fr;gap:30px;align-items:start}
.apex-section-head span,.apex-feature-copy>span{font-size:10px;letter-spacing:.16em;color:#898982}
.apex-section-head h2{font:700 clamp(48px,6vw,90px)/.92 "Archivo Black",sans-serif;text-transform:uppercase;letter-spacing:-.05em;max-width:1050px}
.apex-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#30302e;margin-top:70px}
.apex-service-grid article{background:#111;padding:38px;min-height:330px;display:flex;flex-direction:column}
.apex-service-grid article>span{font-size:10px;color:#dfff00}
.apex-service-grid h3{font:700 28px/1 "Archivo Black",sans-serif;text-transform:uppercase;margin:55px 0 18px}
.apex-service-grid p{color:#9b9b96;line-height:1.7}
.apex-service-grid a{margin-top:auto;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#dfff00}
.apex-feature{display:grid;grid-template-columns:1fr 1fr;min-height:700px;background:#141414}
.apex-feature-image img{min-height:700px}
.apex-feature-copy{padding:80px 7vw;display:flex;flex-direction:column;justify-content:center}
.apex-feature h2{font:700 clamp(48px,5vw,80px)/.9 "Archivo Black",sans-serif;text-transform:uppercase;letter-spacing:-.045em;margin:20px 0 26px}
.apex-feature p{color:#aaa9a4;line-height:1.8}
.apex-feature ul{list-style:none;padding:0;margin:28px 0 0;border-top:1px solid #3a3a38}
.apex-feature li{padding:15px 0;border-bottom:1px solid #3a3a38;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.apex-booking{padding:110px 6vw;display:grid;grid-template-columns:1.2fr .8fr;gap:7vw;align-items:end;background:#dfff00;color:#080808}
.apex-booking h2{font:800 clamp(56px,7vw,104px)/.84 "Archivo Black",sans-serif;text-transform:uppercase;letter-spacing:-.055em;margin:20px 0 0}
.apex-book-card{border:1px solid #111;padding:34px}
.apex-book-card span{font-size:10px;font-weight:800;letter-spacing:.14em}
.apex-book-card p{line-height:1.7;margin:28px 0}
.apex-book-card .apex-primary{background:#080808;color:#dfff00}
.demo-apex .demo-footer{background:#050505;color:#777}

/* Responsive */
@media (max-width:900px){
  .demo-nav{height:70px;padding:0 20px}
  .demo-nav nav{display:none}
  .demo-site .demo-back{left:12px;bottom:12px;font-size:10px}
  .ember-hero,.aurelia-property,.apex-feature,.apex-booking{grid-template-columns:1fr}
  .ember-copy{padding:130px 24px 55px}
  .ember-hero-image{min-height:480px}
  .ember-hero-image img{min-height:480px}
  .ember-story{grid-template-columns:1fr;padding:80px 24px;gap:32px}
  .ember-menu{padding:60px 24px 90px}
  .ember-menu-grid,.aurelia-services,.apex-service-grid{grid-template-columns:1fr}
  .ember-feature{margin:0 20px 100px}
  .ember-visit,.aurelia-contact-section{margin:0 20px 60px;padding:45px 28px;display:block}
  .ember-visit>div:last-child,.aurelia-contact-section>a{margin-top:30px}
  .aurelia-hero{min-height:760px}
  .aurelia-hero-copy{left:24px;right:24px;bottom:80px}
  .aurelia-index{display:none}
  .aurelia-intro{padding:90px 24px}
  .aurelia-property-image img{min-height:450px}
  .aurelia-property-copy{padding:65px 24px}
  .aurelia-services{padding:70px 20px}
  .apex-hero{padding:0 24px 70px;min-height:760px}
  .apex-stat{display:none}
  .apex-services{padding:80px 20px}
  .apex-section-head{grid-template-columns:1fr}
  .apex-feature-image img{min-height:420px}
  .apex-feature-copy{padding:60px 24px}
  .apex-booking{padding:80px 24px}
  .demo-footer{flex-direction:column}
}
@media (max-width:560px){
  .ember-copy h1{font-size:62px}
  .ember-notes{gap:12px}
  .ember-feature-card{right:14px;bottom:-55px;padding:28px}
  .ember-menu h3{font-size:30px}
  .ember-visit h2{font-size:48px}
  .aurelia-hero h1{font-size:64px}
  .aurelia-intro h2{font-size:46px}
  .aurelia-specs{grid-template-columns:1fr}
  .aurelia-contact-section h2{font-size:48px}
  .apex-hero h1{font-size:64px}
  .apex-section-head h2,.apex-feature h2{font-size:48px}
  .apex-booking h2{font-size:56px}
}
