@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Kaushan+Script&display=swap');
:root{--red:#c8101e;--black:#171b1d;--cream:#f5f2ec;--white:#fff;--muted:#666}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--black);font-family:'DM Sans',Arial,sans-serif;background:#fff}a{color:inherit;text-decoration:none}.site-header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:#fff;position:relative;z-index:5}.brand{width:160px;display:flex;flex-direction:column;align-items:center;position:relative;color:var(--black);line-height:1}.brand-roof{width:82px;height:42px;border-top:6px solid var(--red);border-left:6px solid var(--red);border-right:6px solid var(--red);transform:perspective(55px) rotateX(24deg);clip-path:polygon(0 100%,50% 0,100% 100%);position:absolute;top:-23px}.brand-name{font-weight:700;font-style:italic;font-size:45px;letter-spacing:-5px}.brand-hostel{font-size:14px;letter-spacing:4px;margin-top:3px}.brand-city{font-size:10px;letter-spacing:3px;margin-top:7px}.main-nav{display:flex;align-items:center;gap:clamp(18px,3vw,42px);font-size:15px}.main-nav>a:not(.button){padding:10px 0;border-bottom:2px solid transparent}.main-nav>a.active,.main-nav>a:not(.button):hover{color:var(--red);border-color:var(--red)}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--red);color:white;border:1px solid var(--red);border-radius:12px;padding:13px 23px;font:600 14px 'DM Sans',sans-serif;cursor:pointer;transition:.2s}.button:hover{background:#a90d19;border-color:#a90d19;transform:translateY(-1px)}.nav-book{border-radius:24px;padding:12px 18px}.menu-toggle{display:none;background:none;border:0;font-size:27px}
.hero{height:465px;position:relative;display:flex;align-items:center;overflow:hidden;background:linear-gradient(100deg,#f3e7d4,#b5d3e6 65%,#6a9fc5)}.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.87),rgba(255,255,255,.55) 48%,rgba(255,255,255,.04)),url('images/hero-tirana.jpg') center 53%/cover no-repeat}.hero-content{position:relative;z-index:2;width:56%;margin-left:7%;text-align:center}.script,.script-heading{font-family:'Kaushan Script','Brush Script MT',cursive;font-weight:400}.script{font-size:36px;margin:0 0 -2px}.hero h1{font-size:clamp(42px,6vw,72px);font-weight:700;letter-spacing:-3px;margin:0 0 2px;font-style:italic}.city-mark{display:flex;align-items:center;justify-content:center;gap:13px;font-size:19px;letter-spacing:5px;font-weight:500}.city-mark span,.eyebrow span{height:2px;width:43px;background:var(--red);display:inline-block}.hero-copy{font-size:17px;line-height:1.5;margin:13px 0}.brush-note{display:inline-block;background:var(--red);color:#fff;padding:11px 29px;border-radius:45% 10% 40% 8%;font:20px 'Kaushan Script',cursive;transform:rotate(-2deg);margin-top:2px}.heart{font-size:30px;color:var(--red);line-height:1.2}.hero-flag{position:absolute;right:8%;top:15%;width:145px;height:175px;background:var(--red);clip-path:polygon(0 0,100% 25%,93% 100%,0 75%);filter:drop-shadow(0 6px 3px #4445);display:grid;place-items:center}.eagle{font-size:67px;color:#111;transform:rotate(90deg)}.scroll-cue{position:absolute;right:5%;bottom:18px;color:#fff;font-size:12px;text-shadow:0 1px 4px #333}.scroll-cue span{font-size:18px;margin-left:7px}.features{display:grid;grid-template-columns:repeat(4,1fr);padding:28px 4%;background:#fff}.feature{text-align:center;padding:0 12px;border-right:1px solid #ddd}.feature:last-child{border:0}.feature-icon{font-size:48px;line-height:1.2;color:var(--red)}.feature h2{font-size:14px;letter-spacing:1px;margin:7px 0}.feature p{font-size:14px;line-height:1.55;margin:0}.rooms-section{padding:38px 5%;background:var(--cream);display:grid;grid-template-columns:38% 62%;align-items:center;gap:18px}.eyebrow{font-size:12px;letter-spacing:1px;color:var(--red);font-weight:700;margin:0 0 8px;display:flex;align-items:center;gap:10px}.eyebrow span{width:32px}.script-heading{font-size:32px;line-height:1.2;margin:0 0 10px}.rooms-intro>p:not(.eyebrow){font-size:14px;line-height:1.5;max-width:370px;margin:0 0 20px}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.room-card{background:white;border-radius:8px;overflow:hidden;text-align:center;box-shadow:0 2px 10px #0000000b;position:relative;padding-bottom:12px}.room-card img{width:100%;height:160px;object-fit:cover;display:block;position:relative;z-index:2}.room-placeholder{height:160px;display:grid;place-items:center;background:linear-gradient(135deg,#ded6ca,#f8f4ec);color:#777;font-size:12px;position:absolute;top:0;left:0;right:0}.room-card h3{font-size:14px;font-weight:600;margin:12px 5px 3px}.room-card p{font-size:11px;color:#444;margin:0}.explore{display:grid;grid-template-columns:42% 58%;min-height:220px;background:var(--black);color:#fff}.explore-copy{padding:30px 10% 25px 11%;align-self:center}.explore-copy .eyebrow{min-height:12px}.explore-copy .script-heading{font-size:34px}.explore-copy>p:not(.eyebrow){font-size:14px;line-height:1.5;max-width:390px;margin:5px 0 12px}.button-outline{background:transparent;border-color:#fff;padding:10px 18px}.button-outline:hover{background:#fff;color:var(--black)}.explore-photo{min-height:220px;background:linear-gradient(90deg,var(--black),transparent 16%),url('images/tirana-street.jpg') center/cover no-repeat}.about{display:grid;grid-template-columns:28% 48% 24%;align-items:center;min-height:175px;padding:20px 5%;background:#fff}.about-emblem{text-align:center}.brush{width:170px;height:105px;background:var(--red);clip-path:polygon(7% 15%,95% 4%,100% 82%,11% 100%,0 43%);display:grid;place-items:center;margin:auto}.brush span{font-size:63px;color:#111;transform:rotate(90deg)}.about-copy .script-heading{font-size:27px}.about-copy>p:last-child{font-size:14px;line-height:1.5;max-width:450px;margin:8px 0 0}.about-note{text-align:center;color:var(--black)}.about-note .script-heading{font-size:23px;transform:rotate(-8deg)}.about-note span{color:var(--red);font-size:27px}.booking-section{padding:48px 8%;background:var(--cream)}.booking-heading{text-align:center;max-width:600px;margin:0 auto 25px}.booking-heading .eyebrow{justify-content:center}.booking-heading>p:last-child{font-size:14px;color:#555}.inquiry-form{max-width:850px;margin:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.inquiry-form label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600}.inquiry-form input,.inquiry-form select,.inquiry-form textarea{width:100%;border:1px solid #d2cec6;border-radius:7px;padding:12px;background:white;font:14px 'DM Sans',sans-serif;color:var(--black)}.inquiry-form input:focus,.inquiry-form select:focus,.inquiry-form textarea:focus{outline:2px solid #c8101e33;border-color:var(--red)}.full{grid-column:1/-1}.form-action{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.form-action small{font-size:11px;color:#666}.form-status{font-size:13px;color:var(--red);margin:0}footer{min-height:110px;background:#15191b;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:22px 7%;position:relative;overflow:hidden}.footer-left,.footer-right{font-size:12px;letter-spacing:1px;z-index:1}.footer-brand{color:#fff;width:130px}.footer-brand .brand-name{font-size:38px}.footer-brand .brand-hostel{font-size:11px}.footer-right{display:flex;align-items:center;gap:16px}.footer-right a{font-size:19px}.footer-right .email-link{font-size:12px}.footer-pattern{position:absolute;left:-10px;bottom:-27px;color:var(--red);font-size:90px;opacity:.7;transform:rotate(25deg)}
@media(max-width:850px){.site-header{height:85px;padding:0 5%}.brand{width:125px}.brand-name{font-size:38px}.brand-hostel{font-size:11px}.brand-city{font-size:8px}.main-nav{gap:14px;font-size:13px}.nav-book{padding:10px 12px}.hero{height:420px}.hero-content{width:65%;margin-left:3%}.hero-flag{right:5%;width:105px;height:135px}.rooms-section{grid-template-columns:1fr;gap:25px}.room-grid{max-width:100%}.rooms-intro{max-width:620px}.about{grid-template-columns:22% 54% 24%;padding-left:3%;padding-right:3%}.brush{width:125px;height:85px}.brush span{font-size:48px}}
@media(max-width:620px){.site-header{height:76px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:15px 6% 22px;box-shadow:0 8px 15px #0002;flex-direction:column;align-items:stretch;gap:8px}.main-nav.open{display:flex}.main-nav>a:not(.button){padding:9px 0}.nav-book{align-self:flex-start}.hero{height:435px;align-items:flex-start}.hero-photo{background-image:linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.52) 65%,rgba(255,255,255,.05)),url('images/hero-tirana.jpg');background-position:center;background-size:cover}.hero-content{width:94%;margin:48px auto 0}.script{font-size:29px}.hero h1{font-size:46px}.city-mark{font-size:14px;letter-spacing:3px;gap:8px}.city-mark span{width:25px}.hero-copy{font-size:15px}.hero-flag{top:auto;bottom:44px;right:7%;width:75px;height:95px}.eagle{font-size:40px}.scroll-cue{display:none}.features{grid-template-columns:repeat(2,1fr);padding:20px 3%;row-gap:22px}.feature:nth-child(2){border:0}.feature-icon{font-size:40px}.feature h2{font-size:12px}.feature p{font-size:12px}.rooms-section{padding:30px 5%}.script-heading{font-size:28px}.room-grid{grid-template-columns:1fr;gap:14px}.room-card{max-width:420px;width:100%;margin:auto}.room-card img,.room-placeholder{height:200px}.explore{grid-template-columns:1fr}.explore-copy{padding:28px 7%}.explore-photo{min-height:180px;background-image:url('images/tirana-street.jpg')}.about{grid-template-columns:1fr;text-align:center;gap:15px;padding:25px 7%}.about-copy .eyebrow{justify-content:center}.about-copy>p:last-child{margin-left:auto;margin-right:auto}.about-note{display:none}.booking-section{padding:35px 6%}.inquiry-form{grid-template-columns:1fr;gap:13px}.full{grid-column:auto}.form-action{align-items:flex-start;flex-direction:column}footer{flex-wrap:wrap;gap:18px;padding:22px 6%}.footer-left{font-size:10px}.footer-right{gap:10px}.footer-right span{font-size:10px}}
