/* ImsouaneHostel / Ocean Editorial V2 — design layer; legacy pages remain intact. */
:root{--ink:#18383a;--ink2:#102d31;--cream:#f9f7f2;--sand:#f3eee7;--line:#e8e6df;--orange:#dd815b;--orangeDark:#ba593a;--muted:#667b78;--radius:24px}
body{background:var(--cream)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #efb082;outline-offset:3px}
.site-header{height:86px;background:rgba(255,255,255,.97);border-bottom:1px solid #e8eeea;position:sticky;top:0;z-index:60;backdrop-filter:blur(18px)}
.nav-shell{gap:20px}.nav-links{gap:7px;align-items:center}.nav-links>a:not(.button){padding:10px 12px;border-radius:99px;color:#3b5555;white-space:nowrap}.nav-links>a:not(.button).nav-active{background:#eaf0ec;color:var(--ink2)}.nav-links>a:not(.button):hover{color:#ba593a;background:#fff4eb}.nav-cta{border-radius:99px;margin-inline-start:7px;gap:8px}.lang-switch{margin-inline-start:8px}.brand{letter-spacing:-1.2px}.brand-accent{color:#ce7152}
.hero{height:min(710px,73vw)}.hero-shade{background:linear-gradient(95deg,#0c2b31ed 0%,#14383ccf 45%,#163b3d22 100%),linear-gradient(0deg,#122b3170,transparent 50%)}.hero-inner h1{max-width:850px}.hero .button{border-radius:100px}.filter-panel{border-radius:18px}.filter-panel .button{border-radius:12px}.section{padding-block:92px}.section-top h2{font-size:clamp(32px,3.5vw,52px)}.stay-card{border-radius:23px;overflow:hidden;border:1px solid #e2e6df;background:#fff;box-shadow:0 10px 30px #1c3f4110}.stay-card-photo{overflow:hidden}.stay-card-photo img{transition:transform .5s ease}.stay-card:hover .stay-card-photo img{transform:scale(1.045)}.stay-card-info{background:#fff}.stay-card h3 a:hover{color:var(--orangeDark)}.detail-price{border-radius:13px}.contact-card{border-radius:22px;box-shadow:0 16px 45px #13373b11}.detail-gallery{border-radius:23px}.button-orange{background:#c96745;color:#fff}.button-orange:hover{background:#b6502f}.button-dark{background:#16383d}.bottom-cta{background:#d99b78}
.section-more{align-self:center;display:inline-flex;align-items:center;border-bottom:1px solid #c58161;color:#a45437;font-size:13px;font-weight:800;padding-bottom:9px;white-space:nowrap}.section-more:hover{color:#14383b}.section-top{align-items:end}.home-activities-section{background:#f0f4ef}.home-journal-section{background:#fffdf9}.activity-grid,.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.activity-card,.journal-card{background:#fff;min-width:0;border:1px solid #e1e7e2;border-radius:24px;overflow:hidden;box-shadow:0 12px 32px #1536380b;transition:transform .25s,box-shadow .25s}.activity-card:hover,.journal-card:hover{transform:translateY(-4px);box-shadow:0 20px 45px #1536381d}.activity-cover,.journal-cover{display:block;position:relative;overflow:hidden;background:#c6d5c9}.activity-cover{aspect-ratio:1.35}.journal-cover{aspect-ratio:1.42}.activity-cover img,.journal-cover img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.activity-card:hover img,.journal-card:hover img{transform:scale(1.05)}.activity-cover>span{position:absolute;top:17px;left:17px;border-radius:99px;background:#fff;color:#24464a;padding:9px 14px;font-size:11px;font-weight:800;box-shadow:0 6px 20px #0002}.activity-copy,.journal-copy{padding:24px 25px 26px;display:flex;flex-direction:column;min-height:236px}.activity-location{font-size:11px;font-weight:800;letter-spacing:.04em;color:#b16c4d}.activity-copy h3,.journal-copy h3{font:800 clamp(20px,1.7vw,26px)/1.28 Manrope,Tajawal,sans-serif;letter-spacing:-.7px;margin:11px 0}.activity-copy p,.journal-copy p{line-height:1.75;color:#6b7a76;font-size:13px;margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.activity-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid #e7eae4;margin-top:auto;padding-top:18px}.activity-bottom strong{font-size:13px;color:#1e4944}.activity-bottom a,.journal-read{font-size:12px;color:#c05f3f;font-weight:850}.journal-copy>span{color:#a06d59;font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.journal-read{display:inline-block;margin-top:auto;padding-top:22px}.chip-row{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:28px}.chip{background:#fff;border:1px solid #dde5dd;color:#355652;padding:11px 17px;border-radius:99px;font-size:12px;font-weight:800}.chip:hover,.chip.selected{background:#143b3f;color:#fff;border-color:#143b3f}.editorial-empty{background:#fff;border:1px solid #dfe8e1;border-radius:24px;min-height:340px;padding:55px 22px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.editorial-empty>span{font-size:48px;color:#d38c64}.editorial-empty h3{font:800 27px Manrope,Tajawal,sans-serif;margin:12px 0 6px}.editorial-empty p{max-width:440px;line-height:1.8;font-size:13px;color:#71807a}.editorial-empty .button{margin-top:13px;border-radius:100px}.home-experience-note{background:#fff;border:1px solid #dce6dd;border-radius:22px;padding:31px;display:flex;align-items:center;gap:25px;justify-content:space-between}.home-experience-note>div{flex:1}.home-experience-note strong{font:800 23px Manrope,Tajawal,sans-serif}.home-experience-note p{font-size:13px;color:#627671;line-height:1.7}.big-glyph{font-size:55px;color:#d78e65}.home-experience-note .button{border-radius:99px}.journal-teaser{background:linear-gradient(110deg,#12383e,#276163);padding:50px 55px;border-radius:25px;color:#fff;display:flex;align-items:end;justify-content:space-between;gap:35px}.journal-teaser span{font-weight:800;letter-spacing:2px;font-size:10px;color:#e1b592}.journal-teaser h3{font:800 clamp(26px,3vw,39px) Manrope,Tajawal,sans-serif;max-width:620px;margin:18px 0}.journal-teaser p{color:#d4e4df;font-size:14px}.journal-teaser .button{border-radius:99px}.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;margin:25px 0}.footer-links a{font-size:13px;font-weight:700;color:#d2e1df}.footer-links a:hover{color:#f2b58e}
/* Listing, journal and editorial sub-pages */
.subhero,.journal-hero{background:radial-gradient(circle at 88% 18%,#36736a 0%,transparent 37%),linear-gradient(120deg,#0e3036,#1c4a4c 65%,#22535b);color:#fff;position:relative;overflow:hidden}.subhero:after,.journal-hero:after{content:'〰';position:absolute;right:-1.5%;bottom:-35%;font:300 350px Manrope,sans-serif;color:#ffffff0b;pointer-events:none}.subhero .shell{position:relative;z-index:1;padding-block:95px 105px}.subhero h1{font:800 clamp(46px,5.5vw,76px)/1.12 Manrope,Tajawal,sans-serif;letter-spacing:-3px;max-width:970px;margin:20px 0}.subhero p{color:#d4e4e2;font-size:16px;line-height:1.85;max-width:660px}.accent-dot{color:#eca97e}.subhero-actions{display:flex;gap:24px;align-items:center;margin-top:30px}.subhero-actions .button{border-radius:99px}.ghost-link{color:#f3f0eb;font-weight:800;font-size:13px}.collection-section{min-height:500px}.activity-hero-image{width:100%;height:min(57vw,540px);overflow:hidden;border-radius:25px;background:#e0e5de}.activity-hero-image img{height:100%;width:100%;object-fit:cover}.activity-detail .detail-body{margin-top:60px}.whatsapp-button,.button.whatsapp-button{background:#0f9756;color:white;border-radius:11px}.whatsapp-button:hover{background:#0a8148}
.journal-hero{background:radial-gradient(circle at 78% 45%,#3b7668 0%,transparent 40%),linear-gradient(110deg,#10343c,#174a4f)}.journal-hero-inner{min-height:470px;display:grid;grid-template-columns:1.6fr .6fr;align-items:center;gap:45px;padding:70px 0}.journal-hero h1{font:800 clamp(56px,7vw,104px)/1.03 Manrope,Tajawal,sans-serif;letter-spacing:-5px;margin:18px 0}.journal-hero h1 em{font-style:normal;color:#e6a783}.journal-hero p{color:#d2e6e2;line-height:1.8;max-width:620px;font-size:15px}.journal-hero .button{margin-top:24px;border-radius:99px}.journal-hero-mark{width:min(100%,300px);aspect-ratio:1;border:1px solid #ffffff47;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-8deg);margin-left:auto;color:#e7c0a2}.journal-hero-mark span{font-size:11px;font-weight:800;letter-spacing:3px}.journal-hero-mark b{font-size:115px;font-weight:300;color:#edf5ed;line-height:1.2}.journal-section{min-height:450px}.journal-grid{row-gap:30px}
/* JSON article layout — typography, tables, facts, FAQs, notes, source links */
.article-hero{background:#153e42;color:#fff;padding:56px 0 105px}.article-hero .shell{max-width:1000px}.article-back{font-size:12px;font-weight:800;color:#efbb9d}.article-hero-category{font-size:11px;color:#e6b593;letter-spacing:2px;font-weight:800;text-transform:uppercase;margin:65px 0 20px}.article-hero-category span{padding-inline:9px}.article-hero h1{font:800 clamp(44px,5.5vw,78px)/1.14 Manrope,Tajawal,sans-serif;letter-spacing:-3.7px;margin:0;max-width:1000px}.article-hero p{max-width:670px;font-size:16px;line-height:1.85;color:#d5e6e2;margin:25px 0 0}.article-image-shell{max-width:1150px;margin-top:-50px;position:relative}.article-hero-image{width:100%;aspect-ratio:2.05;object-fit:cover;border-radius:22px;box-shadow:0 18px 42px #082b3038;background:#e8e2d6}.article-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:85px;max-width:1110px;margin:75px auto 110px;align-items:start}.article-side{position:sticky;top:120px;border-top:3px solid #c86a47;padding-top:24px}.article-side strong{display:block;font:800 25px Manrope,sans-serif;line-height:1.2;margin:18px 0}.article-side p{color:#798982;font-size:12px;line-height:1.8}.article-side a{display:inline-block;color:#b85838;font-size:13px;font-weight:800;margin-top:18px}.article-body{min-width:0;color:#273f3e;font-size:16px;line-height:1.9}.article-body p{color:#4a6260;font-size:16px;line-height:1.94;margin:16px 0 22px}.article-body h2{font:800 clamp(27px,2.7vw,38px)/1.3 Manrope,Tajawal,sans-serif;letter-spacing:-1.2px;color:#17383d;margin:50px 0 15px}.article-body h3{font:800 24px Manrope,Tajawal,sans-serif;letter-spacing:-.5px;margin:32px 0 11px}.article-intro{font-size:22px!important;font-weight:600;line-height:1.7!important;color:#214a49!important}.article-overview{padding:25px 30px;background:#eaf1ed;border-inline-start:4px solid #b97a55;border-radius:14px;margin:32px 0}.article-overview b{font-size:12px;letter-spacing:1.5px;color:#8e583e;text-transform:uppercase}.article-overview p{margin:7px 0 0}.article-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:33px 0}.article-facts>div{background:#fff;border:1px solid #e2e9e1;border-radius:12px;padding:16px 18px}.article-facts dt{color:#8b968e;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}.article-facts dd{margin:5px 0 0;color:#15383c;font-size:15px;font-weight:800}.article-highlights,.article-bullets,.article-numbered,.article-tips ul{padding-inline-start:26px}.article-body li{padding-inline-start:7px;margin:9px 0;color:#47625d}.article-highlights{padding:20px 25px 20px 48px;background:#f1e8dc;border-radius:16px}.article-highlights li{font-weight:750;color:#614330}.article-table-scroll{overflow-x:auto;border:1px solid #e1e8df;border-radius:14px;margin:28px 0}.article-table{width:100%;border-collapse:collapse;min-width:480px;background:#fff;font-size:13px}.article-table caption{text-align:start;background:#e9f0e9;padding:13px 17px;font-weight:800}.article-table th{background:#153b3f;color:white;text-align:start;padding:12px 17px}.article-table td{padding:12px 17px;border-bottom:1px solid #edf0eb;color:#486260}.article-note{background:#153e42;color:white;padding:23px 28px;border-radius:16px;margin:32px 0}.article-note strong{color:#f0bb98;font-size:14px}.article-note p{color:#d6e5e1;margin:9px 0}.article-tips{padding:10px 25px 22px;background:#f1eee5;border-radius:17px;margin:32px 0}.article-faq{border-top:1px solid #e0e8df;margin-top:48px}.article-faq details{border-bottom:1px solid #e0e8df;padding:17px 0}.article-faq summary{font-weight:800;cursor:pointer;color:#1b4143;list-style-position:inside}.article-faq p{margin-inline-start:20px}.article-resources ul{padding-inline-start:20px}.article-resources a{color:#ad5334;text-decoration:underline}.article-end{text-align:center;padding:50px 30px;border-radius:22px;background:#eaf0e9;margin-top:65px}.article-end span{font-size:56px;color:#bb7654}.article-end h3{margin:10px 0}.article-end p{font-size:14px}.article-end .button{border-radius:100px}
/* Informational pages */
.about-layout,.contact-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:90px;align-items:start}.about-layout h2,.contact-intro h2{font:800 clamp(34px,4vw,56px)/1.2 Manrope,Tajawal,sans-serif;letter-spacing:-2px;margin:20px 0}.about-copy p,.contact-intro p{font-size:16px;color:#526c68;line-height:1.96;margin:0 0 25px}.about-copy .button{border-radius:99px}.about-value-section{background:#eaf0eb;padding:85px 0}.about-values{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.about-values>div{border-top:2px solid #8cb6ae;padding-top:20px}.about-values span{color:#bb7550;font-size:12px;font-weight:900;letter-spacing:2px}.about-values h3{font:800 22px Manrope,Tajawal,sans-serif;margin:13px 0}.about-values p{color:#647b77;line-height:1.75;font-size:13px}.contact-detail-card{background:#fff;border:1px solid #dee7df;border-radius:24px;padding:37px;box-shadow:0 18px 44px #153f3b14}.contact-detail-card h3{font:800 28px Manrope,sans-serif}.contact-detail-card p{color:#617974;line-height:1.9}.contact-email{display:block;word-break:break-all;color:#a85636;font-weight:800;margin:20px 0}.contact-detail-card .button{border-radius:99px}
/* Responsive refinements */
@media(max-width:1160px){.nav-links>a:not(.button){padding:9px}.nav-links{gap:1px}.nav-cta{display:none}.activity-grid,.journal-grid{gap:17px}.article-layout{gap:55px}}
@media(max-width:760px){.site-header{height:74px}.nav-links{top:74px;left:0;right:0;max-height:calc(100dvh - 74px);overflow-y:auto;gap:0;padding:14px 18px 26px;background:white;border-top:1px solid #e1e8e0}.nav-links>a:not(.button){padding:13px 15px;border-bottom:1px solid #edf0eb}.nav-links .lang-switch{margin:17px 0 0}.nav-shell{gap:8px}.hero{height:650px}.activity-grid,.journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-copy,.journal-copy{padding:20px;min-height:220px}.subhero .shell{padding-block:75px 85px}.subhero h1{font-size:clamp(39px,7vw,62px);letter-spacing:-2px}.journal-hero-inner{grid-template-columns:1fr;min-height:410px}.journal-hero-mark{display:none}.journal-hero h1{letter-spacing:-3px}.article-layout{display:block;margin-top:48px}.article-side{position:static;margin-bottom:33px;display:none}.article-hero h1{letter-spacing:-2px}.article-facts{grid-template-columns:1fr 1fr}.about-layout,.contact-layout{grid-template-columns:1fr;gap:25px}.about-values{gap:16px}.home-experience-note{flex-wrap:wrap}.journal-teaser{padding:38px;align-items:start;flex-direction:column}.footer-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.section{padding-block:66px}.shell{width:calc(100% - 32px)}.activity-grid,.journal-grid{grid-template-columns:1fr}.activity-cover{aspect-ratio:1.5}.journal-cover{aspect-ratio:1.55}.activity-copy,.journal-copy{min-height:0}.journal-read{margin-top:14px}.subhero .shell{padding-block:65px 75px}.subhero h1{font-size:40px}.subhero p{font-size:14px}.subhero-actions{flex-wrap:wrap}.journal-hero h1{font-size:50px}.journal-hero-inner{padding:60px 0}.article-hero{padding:35px 0 75px}.article-hero-category{margin-top:40px}.article-hero h1{font-size:39px}.article-image-shell{margin-top:-32px}.article-hero-image{aspect-ratio:1.3;border-radius:16px}.article-layout{margin:38px auto 70px}.article-body{font-size:14px}.article-body p{font-size:14px}.article-intro{font-size:19px!important}.article-body h2{font-size:27px}.article-facts{grid-template-columns:1fr}.article-overview{padding:20px}.article-end{padding:29px 14px}.home-experience-note{padding:20px}.home-experience-note .button{width:100%}.journal-teaser{padding:28px}.about-values{grid-template-columns:1fr}.contact-detail-card{padding:26px}}
@media(prefers-reduced-motion:reduce){.activity-card,.journal-card,.activity-cover img,.journal-cover img,.stay-card-photo img{transition:none}}
