/* The Canopies Sanctuary (Aldar, Yas Island) - playful island / sunset theme. Scoped with cn-* */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,700;9..144,800&family=Nunito:wght@400;600;700;800&display=swap');
:root{
  --cn-night:#1f0a2e; --cn-plum:#3d1651; --cn-aub:#5a2468; --cn-sun:#f26a2e; --cn-coral:#ff7a59; --cn-gold:#ffb938;
  --cn-lav:#9a78d6; --cn-sky:#4fc6e4; --cn-cream:#fff7ec; --cn-sand:#ffe8cd; --cn-ink:#2a1535; --cn-mut:#6c5877;
  --cn-r:26px;
}
.cn{font-family:'Nunito',var(--sans);color:var(--cn-ink);}
.cn h1,.cn h2,.cn h3{font-family:'Fraunces',var(--serif);color:inherit;letter-spacing:-.01em;}
.cn p{color:var(--cn-mut);}
.cn a{color:inherit;}
.cn .eyebrow{font-family:'Nunito',var(--sans);font-weight:800;letter-spacing:.16em;color:var(--cn-sun);}
.cn .btn.gold{background:linear-gradient(135deg,var(--cn-sun),var(--cn-coral));border:0;color:#fff;border-radius:999px;box-shadow:0 10px 24px -10px rgba(242,106,46,.8);font-weight:800;}
.cn .btn.gold:hover{filter:brightness(1.08);transform:translateY(-2px);background:linear-gradient(135deg,var(--cn-sun),var(--cn-coral));color:#fff;}
.cn .btn.outline{border-radius:999px;border-color:var(--cn-plum);color:var(--cn-plum);font-weight:800;background:transparent;}
.cn .btn.outline:hover{background:var(--cn-plum);color:#fff;}
.cn .btn.on-dark{border-radius:999px;font-weight:800;}

/* waves */
.cn-wave{display:block;width:100%;height:46px;margin-top:-1px;}
.cn-wave.up{margin-top:0;margin-bottom:-1px;transform:scaleY(-1);}

/* hero */
.cn-hero{position:relative;color:#fff;background:#2a0f3a center/cover no-repeat;padding:158px 0 96px;overflow:hidden;isolation:isolate;}
.cn-hero.small{padding:112px 0 64px;}
.cn-hero:before{content:"";position:absolute;inset:0;z-index:-2;background:inherit;transform:scale(1.04);}
.cn-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(31,10,46,.55) 0%,rgba(61,22,81,.55) 38%,rgba(31,10,46,.92) 100%),radial-gradient(900px 400px at 85% 20%,rgba(242,106,46,.45),transparent 70%);}
.cn-hero h1{color:#fff;font-size:clamp(2.3rem,6vw,4.6rem);line-height:1.03;margin:10px 0 16px;font-weight:800;}
.cn-hero h1 em{font-style:italic;color:var(--cn-gold);font-weight:700;}
.cn-hero .eyebrow{color:var(--cn-gold);}
.cn-lede{font-size:1.18rem;max-width:56ch;color:rgba(255,255,255,.92)!important;margin-bottom:26px;}
.cn-logos{display:flex;align-items:center;gap:26px;margin-bottom:22px;flex-wrap:wrap;}
.cn-logos img{height:62px;width:auto;display:block;}
.cn-logos img.yas{height:70px;}
.cn-logos img.cano{height:44px;}
.cn-logos i{width:1px;height:46px;background:rgba(255,255,255,.4);}
.cn-live{display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.14);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.3);color:#fff;font-weight:800;font-size:.82rem;letter-spacing:.06em;padding:8px 16px;border-radius:999px;margin-bottom:16px;}
.cn-live i{width:9px;height:9px;border-radius:50%;background:var(--cn-gold);box-shadow:0 0 0 0 rgba(255,185,56,.7);animation:cnp 1.8s infinite;}
@keyframes cnp{70%{box-shadow:0 0 0 12px rgba(255,185,56,0);}100%{box-shadow:0 0 0 0 rgba(255,185,56,0);}}
.cn-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:38px;max-width:900px;}
.cn-stats div{background:rgba(255,255,255,.12);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.22);border-radius:20px;padding:16px 18px;}
.cn-stats strong{display:block;font-family:'Fraunces',serif;font-size:1.7rem;color:var(--cn-gold);line-height:1.1;}
.cn-stats span{font-size:.82rem;color:rgba(255,255,255,.85);}
.cn-permit,.cn-updated{font-size:.78rem;color:rgba(255,255,255,.7)!important;margin:14px 0 0;}
.cn-sunbird{position:absolute;right:4%;top:120px;width:120px;opacity:.9;z-index:0;pointer-events:none;animation:cnf 6s ease-in-out infinite;}
@keyframes cnf{50%{transform:translateY(-14px) rotate(-3deg);}}

/* subnav */
.cn-subnav{position:sticky;top:64px;z-index:40;background:rgba(255,247,236,.94);backdrop-filter:blur(10px);border-bottom:1px solid #f2dfc6;}
.cn-subnav .container{display:flex;gap:4px;overflow-x:auto;white-space:nowrap;scrollbar-width:none;padding-top:8px;padding-bottom:8px;}
.cn-subnav a{font-weight:800;font-size:.84rem;color:var(--cn-plum);text-decoration:none;padding:8px 14px;border-radius:999px;}
.cn-subnav a:hover{background:var(--cn-sand);}
.cn-subnav a.cta{margin-left:auto;background:var(--cn-plum);color:#fff;}

/* urgent bar */
.cn-urgent{background:linear-gradient(90deg,var(--cn-sun),var(--cn-coral),var(--cn-gold));color:#fff;}
.cn-urgent-in{display:flex;gap:22px;align-items:center;justify-content:space-between;padding:16px 0;flex-wrap:wrap;}
.cn-urgent-txt{font-weight:700;max-width:70ch;} .cn-urgent-txt strong{font-weight:800;}
.cn-urgent-act{display:flex;gap:10px;flex-wrap:wrap;}
.cn-urgent .btn.gold{background:#fff;color:var(--cn-plum);box-shadow:none;}
.cn-urgent .btn.on-dark{background:var(--cn-plum);border-color:var(--cn-plum);color:#fff;}

/* section wrappers */
.cn-sec{padding:84px 0;position:relative;}
.cn-sec.cream{background:var(--cn-cream);} .cn-sec.sand{background:var(--cn-sand);}
.cn-sec.night{background:linear-gradient(180deg,var(--cn-night),var(--cn-plum));color:#fff;}
.cn-sec.night h2,.cn-sec.night h3{color:#fff;} .cn-sec.night p{color:rgba(255,255,255,.82);} .cn-sec.night .eyebrow{color:var(--cn-gold);}
.cn-sec.sunset{background:linear-gradient(160deg,var(--cn-plum) 0%,var(--cn-aub) 40%,#b5412f 80%,var(--cn-sun) 120%);color:#fff;}
.cn-sec.sunset h2,.cn-sec.sunset h3{color:#fff;} .cn-sec.sunset p{color:rgba(255,255,255,.86);} .cn-sec.sunset .eyebrow{color:var(--cn-gold);}
.cn-sh{text-align:center;max-width:70ch;margin:0 auto 38px;}
.cn-sh h2{font-size:clamp(1.9rem,4vw,3rem);margin:8px 0 10px;font-weight:800;}
.cn-sh p{margin:0 auto;}

/* mosaic */
.cn-mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:14px;margin-top:34px;}
.cn-mosaic figure{margin:0;position:relative;border-radius:var(--cn-r);overflow:hidden;box-shadow:0 18px 40px -22px rgba(61,22,81,.55);}
.cn-mosaic figure.big{grid-column:span 2;grid-row:span 2;}
.cn-mosaic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s;}
.cn-mosaic figure:hover img{transform:scale(1.06);}
.cn-mosaic figcaption{position:absolute;left:12px;bottom:12px;background:rgba(31,10,46,.72);color:#fff;font-weight:800;font-size:.82rem;padding:6px 14px;border-radius:999px;backdrop-filter:blur(6px);}

/* scale numbers */
.cn-scale{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px;}
.cn-scale div{background:#fff;border-radius:var(--cn-r);padding:22px 20px;text-align:center;box-shadow:0 14px 34px -22px rgba(61,22,81,.5);border-bottom:5px solid var(--cn-gold);}
.cn-scale div:nth-child(2n){border-color:var(--cn-sky);} .cn-scale div:nth-child(3n){border-color:var(--cn-coral);}
.cn-scale strong{font-family:'Fraunces',serif;font-size:2.3rem;color:var(--cn-plum);display:block;line-height:1.05;}
.cn-scale span{font-size:.86rem;color:var(--cn-mut);}

/* Yas island theme-park strip */
.cn-yas{display:grid;grid-template-columns:1.05fr 1fr;gap:42px;align-items:center;}
.cn-yas img{width:100%;border-radius:var(--cn-r);display:block;box-shadow:0 26px 50px -26px rgba(0,0,0,.6);}
.cn-pills{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 4px;}
.cn-pills span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#fff;font-weight:800;font-size:.86rem;padding:9px 16px;border-radius:999px;}
.cn-pills.dark span{background:#fff;border-color:#f2dfc6;color:var(--cn-plum);}
.cn-note{font-size:.8rem;color:var(--cn-mut);margin-top:14px;} .night .cn-note,.sunset .cn-note{color:rgba(255,255,255,.7);}

/* benefit cards */
.cn-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.cn-card{background:#fff;border-radius:var(--cn-r);padding:26px 24px;box-shadow:0 16px 36px -24px rgba(61,22,81,.55);position:relative;overflow:hidden;}
.cn-card:before{content:"";position:absolute;right:-30px;top:-30px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,var(--cn-sand),transparent 70%);}
.cn-card h3{font-size:1.18rem;margin:0 0 8px;color:var(--cn-plum);position:relative;}
.cn-card p{margin:0;font-size:.96rem;position:relative;}
.cn-card .ico{font-size:1.7rem;display:block;margin-bottom:8px;position:relative;}
.sand .cn-card,.sunset .cn-card{color:var(--cn-ink);} .sunset .cn-card h3{color:var(--cn-plum);} .sunset .cn-card p{color:var(--cn-mut);}

/* homes */
.cn-homes{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.cn-home{background:#fff;border-radius:var(--cn-r);overflow:hidden;box-shadow:0 20px 44px -26px rgba(61,22,81,.6);display:flex;flex-direction:column;transition:transform .3s;}
.cn-home:hover{transform:translateY(-6px);}
.cn-home-img{position:relative;aspect-ratio:4/3;background:#f6e9d6;}
.cn-home-img{overflow:hidden;}.cn-home-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:10px;display:block;background:#fff;}
.cn-home-img .badge{position:absolute;left:14px;top:14px;background:var(--cn-plum);color:#fff;font-weight:800;font-size:.74rem;letter-spacing:.06em;padding:6px 13px;border-radius:999px;}
.cn-home-body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:6px;flex:1;}
.cn-home h3{margin:0;font-size:1.32rem;color:var(--cn-plum);}
.cn-price{font-family:'Fraunces',serif;font-weight:800;font-size:1.55rem;color:var(--cn-sun);margin:0!important;}
.cn-specs{list-style:none;margin:6px 0;padding:0;display:grid;gap:4px;font-size:.93rem;color:var(--cn-mut);}
.cn-specs li{padding-left:22px;position:relative;} .cn-specs li:before{content:"";position:absolute;left:3px;top:.5em;width:9px;height:9px;border-radius:50%;background:var(--cn-gold);}
.cn-home .actions{margin-top:auto;display:flex;gap:10px;flex-wrap:wrap;padding-top:10px;}
.cn-home .actions .btn{padding:11px 20px;font-size:.88rem;}

/* floor plan gallery */
.cn-fp-tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:26px;}
.cn-fp-tabs button{font:800 .9rem 'Nunito',sans-serif;border:2px solid var(--cn-plum);background:#fff;color:var(--cn-plum);padding:9px 20px;border-radius:999px;cursor:pointer;}
.cn-fp-tabs button.on{background:var(--cn-plum);color:#fff;}
.cn-fps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.cn-fp{background:#fff;border-radius:var(--cn-r);padding:14px;box-shadow:0 14px 34px -24px rgba(61,22,81,.55);text-decoration:none;display:block;}
.cn-fp.hide{display:none;}
.cn-fp .im{aspect-ratio:4/3;background:#fff;border-radius:16px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid #f0e3d0;}
.cn-fp img{max-width:100%;max-height:100%;object-fit:contain;display:block;}
.cn-fp b{display:block;font-family:'Fraunces',serif;color:var(--cn-plum);margin-top:10px;font-size:1.05rem;}
.cn-fp span{font-size:.82rem;color:var(--cn-mut);}

/* price table */
.cn-table-wrap{overflow-x:auto;border-radius:var(--cn-r);box-shadow:0 18px 40px -26px rgba(61,22,81,.6);background:#fff;}
.cn-table{width:100%;border-collapse:collapse;min-width:560px;}
.cn-table th{background:var(--cn-plum);color:#fff;text-align:left;padding:15px 18px;font-weight:800;font-size:.86rem;letter-spacing:.04em;}
.cn-table td{padding:15px 18px;border-bottom:1px solid #f0e3d0;font-size:.97rem;color:var(--cn-ink);}
.cn-table tr:nth-child(even) td{background:#fffaf2;} .cn-table .sm{font-size:.8rem;color:var(--cn-mut);}
.cn-table td:nth-child(4){font-family:'Fraunces',serif;font-weight:800;color:var(--cn-sun);}

/* timeline */
.cn-timeline{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin:26px 0;}
.cn-step{background:#fff;border-radius:22px;padding:18px 10px;text-align:center;position:relative;box-shadow:0 12px 28px -20px rgba(61,22,81,.6);}
.cn-step .pct{display:flex;width:62px;height:62px;border-radius:50%;margin:0 auto 10px;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:800;font-size:1.25rem;color:#fff;background:linear-gradient(135deg,var(--cn-sun),var(--cn-coral));}
.cn-step:last-child .pct{background:linear-gradient(135deg,var(--cn-plum),var(--cn-lav));width:70px;height:70px;}
.cn-step strong{display:block;color:var(--cn-plum);font-size:.88rem;} .cn-step span{font-size:.8rem;color:var(--cn-mut);}
.cn-calc{background:#fff;border-radius:var(--cn-r);padding:28px;box-shadow:0 18px 40px -26px rgba(61,22,81,.6);}
.cn-calc label{font-weight:800;color:var(--cn-plum);display:block;margin-bottom:8px;}
.cn-calc select{width:100%;padding:14px 16px;border-radius:16px;border:2px solid #ecd9bf;font:700 1rem 'Nunito',sans-serif;color:var(--cn-ink);background:var(--cn-cream);}
.cn-calc-out{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px;}
.cn-calc-out div{background:var(--cn-cream);border-radius:16px;padding:14px 16px;}
.cn-calc-out span{display:block;font-size:.8rem;color:var(--cn-mut);} .cn-calc-out strong{font-family:'Fraunces',serif;font-size:1.25rem;color:var(--cn-plum);}

/* launch journey */
.cn-journey{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:10px;}
.cn-jcard{background:#fff;color:var(--cn-ink);border-radius:var(--cn-r);padding:26px 24px;position:relative;box-shadow:0 22px 44px -24px rgba(0,0,0,.55);}
.cn-jcard .date{display:inline-block;background:linear-gradient(135deg,var(--cn-sun),var(--cn-coral));color:#fff;font-weight:800;padding:7px 16px;border-radius:999px;font-size:.86rem;}
.cn-jcard.pub .date{background:linear-gradient(135deg,var(--cn-plum),var(--cn-lav));}
.cn-jcard h3{color:var(--cn-plum)!important;margin:14px 0 6px;font-size:1.2rem;} .cn-jcard p{color:var(--cn-mut)!important;margin:0 0 10px;font-size:.94rem;}
.cn-jcard ul{margin:0;padding:0;list-style:none;font-size:.9rem;color:var(--cn-ink);display:grid;gap:5px;} .cn-jcard li:before{content:"→ ";color:var(--cn-sun);font-weight:800;}

/* amenities */
.cn-amen{display:grid;grid-template-columns:1fr 1fr;gap:22px;}
.cn-amen-card{border-radius:var(--cn-r);overflow:hidden;background:#fff;box-shadow:0 18px 40px -26px rgba(61,22,81,.6);}
.cn-amen-card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;}
.cn-amen-card div{padding:18px 22px 22px;} .cn-amen-card h3{margin:0 0 6px;color:var(--cn-plum);}
.cn-amen-card p{margin:0;font-size:.95rem;}
.cn-chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:28px;}
.cn-chips span{background:#fff;border:2px solid #f0d9ba;color:var(--cn-plum);font-weight:800;font-size:.88rem;padding:9px 18px;border-radius:999px;}
.cn-two{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px;}
.cn-two img{width:100%;border-radius:var(--cn-r);display:block;aspect-ratio:4/3;object-fit:cover;}

/* gallery */
.cn-gallery{columns:3;column-gap:14px;}
.cn-tile{display:block;margin:0 0 14px;border-radius:22px;overflow:hidden;break-inside:avoid;box-shadow:0 14px 30px -22px rgba(61,22,81,.6);}
.cn-tile img{width:100%;display:block;transition:transform .5s;} .cn-tile:hover img{transform:scale(1.05);}

/* mood band */
.cn-mood{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.cn-mood img{width:100%;height:100%;object-fit:cover;border-radius:var(--cn-r);display:block;aspect-ratio:16/10;}

/* location */
.cn-loc{display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center;}
.cn-loc img{width:100%;border-radius:var(--cn-r);display:block;box-shadow:0 22px 44px -26px rgba(61,22,81,.6);}
.cn-facts{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--cn-r);overflow:hidden;box-shadow:0 14px 34px -24px rgba(61,22,81,.55);}
.cn-facts th{text-align:left;padding:13px 18px;width:36%;background:var(--cn-sand);color:var(--cn-plum);font-weight:800;font-size:.9rem;vertical-align:top;}
.cn-facts td{padding:13px 18px;color:var(--cn-ink);font-size:.95rem;border-bottom:1px solid #f4e7d3;}

/* why us / eoi */
.cn-eoi-step{display:flex;gap:18px;align-items:flex-start;padding:20px 0;border-bottom:1px dashed #e8cfae;}
.cn-eoi-step .n{flex:0 0 46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--cn-sun),var(--cn-coral));color:#fff;font-family:'Fraunces',serif;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:1.2rem;}
.cn-eoi-step h3{margin:0 0 4px;color:var(--cn-plum);font-size:1.12rem;} .cn-eoi-step p{margin:0;}
.cn-faq-i{padding:20px 0;border-bottom:1px solid #f0dcc0;} .cn-faq-i h3{font-size:1.08rem;margin:0 0 6px;color:var(--cn-plum);} .cn-faq-i p{margin:0;}
.cn-disc{font-size:.8rem;color:var(--cn-mut);margin-top:20px;}
.cn .related-links a{border-radius:999px;font-weight:800;}

/* lightbox */
.cn-lb{position:fixed;inset:0;background:rgba(31,10,46,.94);display:none;align-items:center;justify-content:center;z-index:999;padding:20px;}
.cn-lb.on{display:flex;} .cn-lb img{max-width:96vw;max-height:92vh;border-radius:12px;background:#fff;} .cn-lb button{position:absolute;top:14px;right:22px;font-size:2.4rem;color:#fff;background:none;border:0;cursor:pointer;}

/* reveal */
.cn .reveal{opacity:1;}

@media (max-width:980px){
 .cn-cards,.cn-homes,.cn-fps,.cn-journey{grid-template-columns:1fr 1fr;} .cn-stats{grid-template-columns:1fr 1fr;} .cn-scale{grid-template-columns:1fr 1fr;}
 .cn-yas,.cn-loc,.cn-amen{grid-template-columns:1fr;} .cn-timeline{grid-template-columns:repeat(4,1fr);} .cn-mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:170px;} .cn-gallery{columns:2;}
 .cn-calc-out{grid-template-columns:1fr 1fr;} .cn-mood{grid-template-columns:1fr 1fr;} .cn-sunbird{display:none;}
}
@media (max-width:620px){
 .cn-cards,.cn-homes,.cn-fps,.cn-journey,.cn-two,.cn-mood{grid-template-columns:1fr;} .cn-timeline{grid-template-columns:repeat(2,1fr);} .cn-hero{padding:104px 0 64px;} .cn-sec{padding:58px 0;}
 .cn-logos img{height:48px;} .cn-logos img.yas{height:54px;} .cn-logos img.cano{height:34px;} .cn-gallery{columns:1;} .cn-calc-out{grid-template-columns:1fr;} .cn-subnav{top:56px;}
}

.cn-hero .eyebrow{display:block;margin-top:4px;}
.cn-hero .cn-live{display:inline-flex;}
.cn-hero .cn-logos+.cn-live{margin-top:6px;}
.cn-urgent{padding:0 !important;}
@media(max-width:620px){.cn-mosaic figcaption{display:none}.cn-mosaic figure.big figcaption{display:block}}
.cn-card .ico{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,#ffe8cd,#ffd6b3);color:var(--cn-sun);font-size:0;margin-bottom:14px;}
.cn-card .ico svg{width:28px;height:28px;}
