/* ════════════════════════════════════════
   APPLE-INSPIRED PAGE STYLES
   ════════════════════════════════════════ */

/* HERO - Full viewport, cinematic */
.ap-hero{height:100vh;min-height:680px;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden;background:#000}
.ap-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.5;transition:transform 12s cubic-bezier(.19,1,.22,1)}
.ap-hero:hover .ap-hero-bg{transform:scale(1.04)}
.ap-hero-content{position:relative;z-index:2;max-width:900px;padding:0 24px}
.ap-hero h1{font-family:'Playfair Display',serif;font-size:clamp(3.5rem,8vw,7rem);color:#fff;font-weight:600;line-height:1;letter-spacing:-.04em;margin:0}
.ap-hero .ap-sub{font-size:clamp(1.1rem,2vw,1.6rem);color:rgba(255,255,255,.75);margin-top:16px;font-weight:300;letter-spacing:.01em}

/* INTRO - Centered manifesto text */
.ap-intro{padding:clamp(80px,12vw,140px) 24px;text-align:center;max-width:860px;margin:0 auto}
.ap-intro h2{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,3.5vw,3rem);font-weight:500;line-height:1.2;letter-spacing:-.025em;color:var(--tx)}
.ap-intro p{font-size:clamp(1rem,1.4vw,1.2rem);color:var(--txs);line-height:1.8;margin-top:20px}

/* SPLIT - Image/Text side-by-side */
.ap-split{display:grid;grid-template-columns:1fr 1fr;min-height:560px}
.ap-split.ap-flip{direction:rtl}.ap-split.ap-flip>*{direction:ltr}
.ap-split-img{overflow:hidden;position:relative}
.ap-split-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.19,1,.22,1)}
.ap-split-img:hover img{transform:scale(1.03)}
.ap-split-text{display:flex;flex-direction:column;justify-content:center;padding:clamp(40px,6vw,80px) clamp(32px,5vw,72px)}
.ap-split-text h3{font-family:'Playfair Display',serif;font-size:clamp(1.6rem,2.5vw,2.6rem);font-weight:500;letter-spacing:-.02em;margin-bottom:20px;line-height:1.15}
.ap-split-text p{font-size:15px;color:var(--txs);line-height:1.8}
.ap-split-text p+p{margin-top:14px}

/* FACTS - Dark strip */
.ap-facts{background:#1d1d1f;color:#fff;padding:clamp(80px,10vw,120px) 24px;text-align:center}
.ap-facts h2{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:500;margin-bottom:56px}
.ap-facts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:36px;max-width:1000px;margin:0 auto}
.ap-fact{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;text-align:left}
.ap-fact strong{font-size:clamp(20px,2.5vw,28px);font-family:'Playfair Display',serif;display:block;margin-bottom:3px}
.ap-fact span{font-size:11px;color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:.12em}

/* CARDS GRID - Things to do */
.ap-cards{padding:clamp(80px,10vw,120px) 24px}
.ap-cards.ap-alt{background:var(--g100)}
.ap-cards h2{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:500;text-align:center;margin-bottom:56px}
.ap-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1100px;margin:0 auto}
.ap-card{background:#fff;border-radius:20px;padding:36px 28px;transition:transform .35s cubic-bezier(.19,1,.22,1),box-shadow .35s}
.ap-card:hover{transform:translateY(-6px);box-shadow:0 20px 60px rgba(0,0,0,.08)}
.ap-alt .ap-card{background:#fff}
.ap-card-icon{font-size:32px;margin-bottom:14px;display:block}
.ap-card h4{font-size:17px;font-weight:600;margin-bottom:6px;letter-spacing:-.01em}
.ap-card p{font-size:14px;color:var(--txs);line-height:1.65}

/* CTA BAND */
.ap-cta{padding:clamp(80px,10vw,120px) 24px;text-align:center;background:linear-gradient(160deg,#1d1d1f 0%,#2d1a24 50%,#1d1d1f 100%)}
.ap-cta h2{font-family:'Playfair Display',serif;font-size:clamp(2rem,4vw,3.2rem);color:#fff;font-weight:500;margin-bottom:12px}
.ap-cta p{color:rgba(255,255,255,.65);font-size:17px;margin-bottom:28px}
.ap-cta a{display:inline-block;padding:13px 28px;border-radius:980px;font-size:15px;font-weight:500;text-decoration:none;margin:0 6px;transition:all .25s}
.ap-cta .ap-btn-w{background:#fff;color:#1d1d1f}.ap-cta .ap-btn-w:hover{background:#f0f0f0}
.ap-cta .ap-btn-o{border:1px solid rgba(255,255,255,.35);color:#fff}.ap-cta .ap-btn-o:hover{border-color:#fff}

/* SECTION - Content blocks */
.ap-section{padding:clamp(60px,8vw,100px) 24px;max-width:1000px;margin:0 auto}
.ap-section h2{font-family:'Playfair Display',serif;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:500;letter-spacing:-.02em;margin-bottom:32px}
.ap-section h3{font-size:18px;font-weight:600;margin-bottom:12px}

/* ACCORDION (FAQ style) */
.ap-acc{border:1px solid var(--g200);border-radius:14px;overflow:hidden;margin-bottom:8px;transition:box-shadow .3s}
.ap-acc:hover{box-shadow:0 4px 20px rgba(0,0,0,.04)}
.ap-acc-btn{width:100%;text-align:left;padding:20px 24px;background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:16px;font-weight:600;font-family:'DM Sans',sans-serif;color:var(--tx);gap:16px}
.ap-acc-arrow{transition:transform .3s;font-size:11px;color:var(--txs);flex-shrink:0}
.ap-acc-body{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.19,1,.22,1);padding:0 24px}
.ap-acc-body.open{max-height:2000px}
.ap-acc-body-inner{padding-bottom:20px;font-size:14.5px;color:var(--txs);line-height:1.75}
.ap-acc-cat{display:inline-block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--cr);font-weight:600;margin-bottom:8px}

/* INFO GRID */
.ap-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:24px}
.ap-info-card{padding:28px 24px;border:1px solid var(--g200);border-radius:16px;transition:border-color .3s}
.ap-info-card:hover{border-color:var(--cr)}
.ap-info-card h4{font-size:16px;font-weight:600;margin-bottom:8px}
.ap-info-card p{font-size:14px;color:var(--txs);line-height:1.65}

/* COLLAPSIBLE LISTS */
.ap-collapse-btn{width:100%;text-align:left;padding:14px 20px;background:var(--g100);border:1px solid var(--g200);border-radius:10px;cursor:pointer;font-size:14px;font-weight:600;font-family:'DM Sans',sans-serif;color:var(--tx);margin-bottom:8px;display:flex;justify-content:space-between;align-items:center}
.ap-collapse-body{max-height:0;overflow:hidden;transition:max-height .4s;padding:0 20px}
.ap-collapse-body.open{max-height:1000px}
.ap-collapse-body p{padding:12px 0 16px;font-size:13px;color:var(--txs);line-height:1.7}

/* DARK SECTION */
.ap-dark{background:#1d1d1f;color:#fff;padding:clamp(60px,8vw,100px) 24px}
.ap-dark h2{color:#fff}.ap-dark p{color:rgba(255,255,255,.7)}
.ap-dark .ap-info-card{border-color:rgba(255,255,255,.1);background:rgba(255,255,255,.04)}
.ap-dark .ap-info-card:hover{border-color:rgba(255,255,255,.25)}
.ap-dark .ap-info-card h4{color:#fff}.ap-dark .ap-info-card p{color:rgba(255,255,255,.6)}

/* RESPONSIVE */
@media(max-width:768px){
  .ap-split{grid-template-columns:1fr}.ap-split.ap-flip{direction:ltr}
  .ap-facts-grid{grid-template-columns:repeat(2,1fr);gap:24px}
  .ap-cards-grid{grid-template-columns:1fr}
  .ap-info-grid{grid-template-columns:1fr}
}
