@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Italiana&display=swap');
:root{--cream:#fbf8f2;--sand:#eee4d5;--gold:#b98543;--terracotta:#a9512a;--nile:#0d4149;--ink:#25221f;--muted:#70675f;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-weight:300}a{color:inherit}img{display:block;max-width:100%}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:rgba(251,248,242,.94);position:fixed;z-index:30;width:100%;backdrop-filter:blur(12px);border-bottom:1px solid rgba(30,25,20,.06)}.logo{text-decoration:none;display:flex;align-items:center;gap:13px}.logo-mark{font-family:Italiana,serif;font-size:39px;color:var(--gold);letter-spacing:-3px;position:relative}.logo-mark:before{content:'';position:absolute;width:39px;height:39px;border:1px solid var(--gold);border-right-color:transparent;border-radius:50%;left:-7px;top:-2px;transform:rotate(-18deg)}.logo-copy{font-family:Italiana,serif;font-size:17px;letter-spacing:5px}.logo-copy small{font-family:'DM Sans';display:block;font-size:7px;letter-spacing:2.5px;margin-top:4px}.site-header nav{display:flex;gap:25px;align-items:center}.site-header nav a{text-decoration:none;text-transform:uppercase;font-size:10px;letter-spacing:1.7px}.nav-cta{border:1px solid var(--gold);padding:11px 15px}.menu{display:none}.hero{height:100vh;min-height:720px;background-size:cover;background-position:center;position:relative;display:flex;align-items:flex-end}.hero:after,.page-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,20,20,.55),rgba(10,10,10,.04) 70%),linear-gradient(0deg,rgba(10,10,8,.4),transparent 55%)}.hero-content{position:relative;z-index:2;color:white;margin:0 8vw 10vh;max-width:780px}.kicker{font-size:10px;letter-spacing:3.2px;font-weight:500;text-transform:uppercase}.hero h1,.page-hero h1,h2,h3{font-family:Italiana,serif;font-weight:400}.hero h1{font-size:clamp(62px,9vw,128px);line-height:.86;margin:20px 0 26px}.hero h1 em{font-style:normal;color:#e8c28f}.hero-content>p:not(.kicker){font-size:18px;line-height:1.7;max-width:650px}.btn{display:inline-block;text-decoration:none;text-transform:uppercase;letter-spacing:1.7px;font-size:10px;font-weight:500;background:var(--gold);color:white;padding:16px 22px;margin-top:18px;border:0}.btn.outline{background:transparent;border:1px solid currentColor}.section{padding:115px 9vw}.section.narrow{max-width:1080px;margin:auto}.section.dark{background:var(--nile);color:white}.section.sand{background:var(--sand)}.section h2{font-size:clamp(42px,5.7vw,74px);line-height:1.07;margin:18px 0 32px}.lead{font-size:18px;line-height:1.9;color:var(--muted);max-width:820px}.dark .lead{color:#d9d1c6}.gold{color:var(--gold)}.center{text-align:center;margin-left:auto;margin-right:auto}.experiences{background:#1f2929;color:white;padding:110px 5vw}.section-title{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:48px}.section-title h2{font-size:clamp(40px,5vw,68px);margin:0}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:3px}.card{min-height:570px;position:relative;background-size:cover;background-position:center;display:flex;align-items:flex-end;text-decoration:none;overflow:hidden}.card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,16,16,.87),rgba(8,10,10,.04) 70%);transition:.3s}.card:hover:after{background:linear-gradient(0deg,rgba(8,16,16,.92),rgba(8,10,10,.12) 70%)}.card-content{position:relative;z-index:2;padding:40px;max-width:620px}.card h3{font-size:42px;margin:10px 0}.card p{line-height:1.65;color:#e6dfd7}.card .arrow{font-size:10px;text-transform:uppercase;letter-spacing:2px;color:white}.heart{background-image:url('images/giza.jpeg')}.sails{background-image:url('images/sail-close.jpeg')}.desert{background-image:url('images/dunes.jpeg')}.custom{background-image:url('images/sur-mesure-panorama.jpeg')}.split{display:grid;grid-template-columns:1fr 1fr;min-height:680px}.split .copy{padding:100px 9vw;display:flex;flex-direction:column;justify-content:center}.split .copy h2{font-size:clamp(42px,5vw,70px);margin:16px 0 28px}.split .copy p{line-height:1.9;color:var(--muted)}.split .image{background-size:cover;background-position:center}.human-strip{display:grid;grid-template-columns:repeat(3,1fr);height:430px}.human-strip img{width:100%;height:100%;object-fit:cover}.promise{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:55px}.promise div{border-top:1px solid var(--gold);padding-top:24px}.promise h3{font-size:28px;margin:0 0 12px}.promise p{line-height:1.7;color:var(--muted)}.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:45px}.video-placeholder{aspect-ratio:9/13;background:linear-gradient(150deg,#d9c9b4,#a56b48);position:relative;display:grid;place-items:center;color:white}.play{width:64px;height:64px;border:1px solid white;border-radius:50%;display:grid;place-items:center;font-size:18px;padding-left:4px}.video-placeholder small{position:absolute;bottom:22px;left:22px;letter-spacing:2px;text-transform:uppercase}.cta{padding:110px 8vw;text-align:center;background:var(--nile);color:white}.cta h2{font-size:clamp(48px,7vw,90px);margin:15px 0}.cta p{max-width:650px;margin:0 auto;line-height:1.8;color:#d8d3ca}.page-hero{height:74vh;min-height:600px;background-size:cover;background-position:center;position:relative;display:flex;align-items:flex-end}.page-hero .hero-content{margin-bottom:8vh}.page-hero h1{font-size:clamp(55px,8vw,105px);line-height:.92;margin:18px 0}.page-hero .subtitle{font-size:20px}.facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #d9d0c4;border-bottom:1px solid #d9d0c4}.fact{padding:30px;text-align:center;border-right:1px solid #d9d0c4}.fact:last-child{border-right:0}.fact strong{font-family:Italiana,serif;font-size:26px;font-weight:400;display:block}.fact small{text-transform:uppercase;letter-spacing:1.7px}.prose p{font-size:17px;line-height:1.95;color:var(--muted);margin:0 0 24px}.prose strong{color:var(--ink);font-weight:500}.timeline{max-width:960px;margin:50px auto 0}.day{display:grid;grid-template-columns:150px 1fr;gap:35px;padding:30px 0;border-top:1px solid #d8d0c5}.day .num{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--gold)}.day h3{font-size:30px;margin:0 0 10px}.day p{margin:0;color:var(--muted);line-height:1.7}.price-box{background:var(--nile);color:white;padding:55px;display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:60px}.price{font-family:Italiana,serif;font-size:56px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:60px}.clean-list{list-style:none;padding:0;margin:25px 0}.clean-list li{padding:12px 0;border-bottom:1px solid #ddd4c9;line-height:1.6}.contact-form{max-width:850px;margin:40px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{font-size:10px;text-transform:uppercase;letter-spacing:1.5px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;margin-top:8px;border:1px solid #cfc5b8;background:white;padding:15px;font:inherit}.contact-form .full{grid-column:1/-1}.contact-form textarea{min-height:150px}.contact-form button{cursor:pointer}.site-footer{padding:55px 6vw;background:#171e1e;color:#d8d3ca;display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:end;font-size:11px}.site-footer .logo-copy{color:white}.footer-links a{display:block;text-decoration:none;margin:8px 0}.legal{text-align:right}.notice{padding:18px 6vw;background:#eadbc8;font-size:12px;text-align:center}.coming{display:inline-block;padding:8px 12px;border:1px solid var(--gold);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-bottom:15px}
@media(max-width:820px){.site-header{height:72px;padding:0 18px}.site-header nav a:not(.nav-cta){display:none}.logo-copy{font-size:14px}.logo-mark{font-size:32px}.hero{min-height:700px}.hero-content{margin:0 24px 60px}.section{padding:80px 24px}.section-title{display:block}.cards,.split,.two-col{grid-template-columns:1fr}.card{min-height:500px}.split .copy{padding:80px 24px}.split .image{min-height:520px;order:-1}.human-strip{grid-template-columns:1fr;height:auto}.human-strip img{height:390px}.promise,.video-grid{grid-template-columns:1fr}.video-placeholder{aspect-ratio:4/5}.facts{grid-template-columns:1fr 1fr}.fact:nth-child(2){border-right:0}.fact:nth-child(-n+2){border-bottom:1px solid #d9d0c4}.day{grid-template-columns:1fr;gap:8px}.price-box{display:block;padding:35px}.price{font-size:45px}.contact-form{grid-template-columns:1fr}.contact-form .full{grid-column:auto}.site-footer{grid-template-columns:1fr}.legal{text-align:left}.page-hero{min-height:580px}}

/* V3 refinements */
.hero{background-position:center center;background-repeat:no-repeat}.hero:before{content:'';position:absolute;inset:0;background:rgba(0,0,0,.04)}
.testimonials-feature{max-width:none!important;background:var(--nile);color:white}.testimonials-feature .kicker{font-size:18px;color:white!important;letter-spacing:4px}.testimonials-feature h2{color:white}.testimonials-feature .lead{color:#ddd6cc}.testimonials-feature .video-grid{max-width:900px;margin:45px auto 0}
.portrait-feature,.duo-feature{display:grid;grid-template-columns:1fr 1fr;min-height:620px;background:#f1e7d8}.portrait-image img,.duo-image img{width:100%;height:100%;object-fit:cover}.portrait-copy,.duo-copy{padding:90px 8vw;display:flex;flex-direction:column;justify-content:center}.portrait-copy h2,.duo-copy h2{font-size:clamp(48px,6vw,82px);margin:15px 0 25px}.portrait-copy p,.duo-copy p{font-size:17px;line-height:1.9;color:var(--muted)}
.program-hero{background-position:center}.program-story>p:not(.kicker){font-size:18px;line-height:1.95;color:var(--muted);max-width:850px}.program-story strong{color:var(--ink);font-weight:500}.dream-line{font-family:Italiana,serif;font-size:clamp(50px,7vw,92px);color:var(--nile);margin:75px 0 45px}.program-story blockquote{font-family:Italiana,serif;font-size:clamp(34px,4vw,54px);line-height:1.25;margin:75px 0;padding:35px 0;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);color:var(--nile)}.program-closing{font-family:Italiana,serif;font-size:clamp(38px,5vw,65px);line-height:1.2;margin:90px 0 25px}.program-closing em{font-style:normal;color:var(--gold)}.price-box small{display:block;margin-top:10px;color:#d8d3ca}
@media(min-width:821px){.hero{background-size:cover;background-position:center 58%}.program-hero{background-position:center 58%}}
@media(max-width:820px){.portrait-feature,.duo-feature{grid-template-columns:1fr}.portrait-image,.duo-image{height:520px}.portrait-copy,.duo-copy{padding:70px 24px}.hero{background-position:center center}.program-story blockquote{margin:55px 0}.program-closing{margin-top:65px}}

/* V3.1 — three concepts, responsive video testimonials, mobile navigation */
@media(min-width:821px){.experiences .cards{grid-template-columns:repeat(3,1fr)}.experiences .card{min-height:540px}}
.video-embed{position:relative;aspect-ratio:9/16;background:#111;overflow:hidden}.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.menu-toggle{display:none;background:none;border:0;padding:10px;cursor:pointer;z-index:52}.menu-toggle span{display:block;width:25px;height:1px;background:var(--ink);margin:6px 0;transition:.3s}
@media(max-width:820px){.site-header nav{display:none}.menu-toggle{display:block}.site-header.menu-open{background:var(--cream);height:72px}.site-header.menu-open nav{display:flex;position:fixed;inset:72px 0 0;background:var(--nile);flex-direction:column;align-items:center;justify-content:center;gap:31px;z-index:50}.site-header.menu-open nav:after{content:"L’Égypte autrement";color:var(--gold);font-family:Italiana,serif;font-size:18px;letter-spacing:3px;margin-top:25px}.site-header.menu-open nav a,.site-header.menu-open nav a:not(.nav-cta){display:block;color:white;font-family:Italiana,serif;font-size:28px;letter-spacing:1px;text-transform:none}.site-header.menu-open nav .nav-cta{border:1px solid var(--gold);padding:13px 25px}.site-header.menu-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}.site-header.menu-open .menu-toggle span:nth-child(2){opacity:0}.site-header.menu-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.menu-lock{overflow:hidden}.video-grid{grid-template-columns:1fr;max-width:390px!important;margin-left:auto!important;margin-right:auto!important}.video-embed{aspect-ratio:9/16}}


/* V3.1.1 — mobile menu fix */
.mobile-home{display:none}
@media(max-width:820px){
  .site-header nav{display:none!important}
  .site-header.menu-open nav{
    display:flex!important;
    position:fixed!important;
    top:72px!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100vw!important;
    height:calc(100dvh - 72px)!important;
    background:var(--nile)!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:28px!important;
    padding:28px 24px!important;
    overflow-y:auto!important;
  }
  .site-header.menu-open nav a,
  .site-header.menu-open nav a:not(.nav-cta),
  .site-header.menu-open nav .mobile-home{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    color:#fff!important;
    font-family:Italiana,serif!important;
    font-size:28px!important;
    line-height:1.15!important;
    letter-spacing:1px!important;
    text-transform:none!important;
  }
  .site-header.menu-open nav .nav-cta{
    display:block!important;
    border:1px solid var(--gold)!important;
    padding:13px 25px!important;
  }
  .site-header.menu-open nav:after{
    display:block!important;
    content:"L’Égypte autrement";
    color:var(--gold);
    font-family:Italiana,serif;
    font-size:18px;
    letter-spacing:3px;
    margin-top:18px;
  }
}
@media(min-width:821px){.mobile-home{display:none!important}}
