/* JP Hills Pulse v1.2 — Theme 3: Spiritual & Nature.
   Local SVG image assets /images/, no frameworks, zero font CDN requests. */
:root{--pine:#264c3a;--forest:#335d48;--dark:#1b382d;--gold:#c69245;--pale:#faefd1;--paper:#fbf7ed;--white:#fffdf6;--ink:#283a31;--muted:#758273;--line:#e9e2ce;--red:#a64336;--shadow:0 18px 43px rgba(58,77,54,.12)}
html{scroll-behavior:smooth}body,.admin-page{background:#f8f2e6;color:var(--ink)}
.site-shell{background:radial-gradient(circle at 12% 3%,#fff8e9 0,transparent 28%),radial-gradient(circle at 90% 48%,#eaf0e3 0,transparent 37%),#fcf9f0}
.header{height:78px;background:rgba(255,252,242,.95);border-bottom:1px solid #e9dfc8;box-shadow:0 3px 20px rgba(43,57,37,.07);position:relative;z-index:3}
.logo{color:#294a39}.logo-mark{border-color:#b99863;color:#8a6a39;background:#f0e7d3;font-weight:700}.logo-type b{color:#ad7e3e}.logo-type small{color:#7e8e75}
.lang-btn,.room-tag{background:#f5eddb;color:#2e5540;border-color:#d7c8a7;box-shadow:0 2px 6px rgba(94,74,40,.05)}
.lang-btn:hover{background:#eadcbc}
.hero{min-height:436px;background:#466858;color:#fff8e8;isolation:isolate;overflow:hidden}
.hero-photo{position:absolute;inset:0;background:#658d78 url('/images/rishikesh-valley.svg') center 46%/cover no-repeat;transform:scale(1.005)}
.hero::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(16,42,33,.92) 0%,rgba(18,49,37,.77) 38%,rgba(24,51,37,.18) 78%,rgba(22,51,40,.15) 100%)}
.hero-content{padding:64px clamp(27px,7vw,86px) 56px;max-width:730px;z-index:1;position:relative}
.hero-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11px;letter-spacing:.22em;font-weight:750;color:#ffe2a8;text-transform:uppercase}
.hero-lotus{font-size:22px;letter-spacing:0}
.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(44px,5.9vw,76px);line-height:1.04;max-width:600px;letter-spacing:-.045em;margin:19px 0 16px}
.hero h1 em{font-style:italic;color:#f0cd8c}
.hero p{font-size:16px;line-height:1.75;color:#f1ead7;max-width:390px;margin:0}
.hero-chips{margin-top:24px;font-size:10px;letter-spacing:.15em;gap:16px;color:#f6d8aa}
.hero-explore{display:inline-flex;align-items:center;gap:22px;border-radius:100px;background:#f6edcf;color:#2c563f;padding:12px 20px;margin-top:30px;font-size:13px;font-weight:750;box-shadow:0 9px 28px rgba(0,0,0,.15)}
.hero-explore:hover{background:#fff8e3;transform:translateY(-2px)}.hero-explore span{font-size:19px}
.welcome{padding:43px clamp(26px,7vw,76px) 24px;align-items:center}
.eyebrow.dark{color:#9c8759;letter-spacing:.20em}
.welcome h2,.section h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(30px,4vw,46px);color:#2e4b36;letter-spacing:-.035em;margin:10px 0 11px}
.welcome h2 em,.section h2 em,.admin-shell h1 em{color:#a97d42}
.welcome p{color:#738171;font-size:14px;line-height:1.65}
.welcome-emblem{font-size:94px;color:#d8c59a}
.quick-band{background:#fffdf5;border:1px solid #e4dabc;border-radius:20px;box-shadow:0 12px 32px rgba(66,80,56,.075);margin-bottom:38px;align-items:center}
.quick-band>div{min-width:0}.quick-band strong{color:#294835;font-weight:800}.quick-band small{color:#7f8875}
.mini-icon{background:#e9efdf;color:#658269;box-shadow:none;border:1px solid #d6e0cb}
.section{padding-bottom:58px;scroll-margin-top:30px}.section-heading{padding:0 2px;margin-bottom:25px}
.section-heading .section-decoration{color:#d7ba80;font-size:53px}
.section-description{font-size:14px;color:#788474;margin:2px 0 0}
.services-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.service-card{display:flex;flex-direction:column;align-items:stretch;min-height:247px;padding:0;text-align:left;overflow:hidden;border:1px solid #ebe1cb;border-radius:23px;background:#fffdf6;box-shadow:0 13px 31px rgba(67,82,59,.085);transform:translateY(0);transition:transform .20s ease,box-shadow .20s ease,border-color .20s ease}
.service-card::before,.service-card::after,.service-glow{display:none}
.service-card:hover,.service-card:focus-visible{transform:translateY(-5px);box-shadow:0 22px 42px rgba(63,82,56,.17);border-color:#d2bb89}
.service-media{display:block;position:relative;width:100%;aspect-ratio:1.52;overflow:hidden;background:linear-gradient(150deg,#f1e2ba,#8ab49e)}
.service-cover{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.service-card:hover .service-cover{transform:scale(1.055)}
.service-cover-custom{z-index:1}
.service-media::after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(20,43,31,0) 42%,rgba(30,57,40,.40) 100%);pointer-events:none}
.service-media-label{position:absolute;left:12px;bottom:12px;z-index:3;color:#f9edca;background:rgba(29,62,44,.78);border:1px solid rgba(255,245,214,.25);border-radius:100px;font-size:9px;font-weight:800;letter-spacing:.13em;padding:6px 11px;backdrop-filter:blur(5px)}
.service-info{display:flex;justify-content:space-between;align-items:flex-end;gap:8px;padding:17px 15px 17px;flex:1}
.service-copy{display:flex;flex-direction:column;gap:5px;margin:0;min-width:0}
.service-copy strong{font-size:16px;line-height:1.25;color:#2f4e3b;letter-spacing:-.015em}
.service-copy small{font-size:11.5px;line-height:1.45;color:#849080;margin-top:0}
.service-go{flex-shrink:0;width:29px;height:29px;border:1px solid #d8ddc8;border-radius:100%;background:#edf1e4;color:#58735c;font-size:16px;font-weight:600;display:grid;place-items:center}
.service-card:hover .service-go{background:#2c5844;color:#fff7de;border-color:#2c5844}
.care-card{position:relative;overflow:hidden;background:linear-gradient(117deg,#254b38 0%,#43674e 100%);border:1px solid #afad83;border-radius:25px;box-shadow:0 20px 42px rgba(23,49,37,.13);padding:40px 42px;min-height:253px}
.care-card:before{content:"";position:absolute;right:0;top:0;bottom:0;width:40%;background:linear-gradient(90deg,#31584000,#31584055),url('/images/service-management.svg') center/cover no-repeat;opacity:.4}
.care-card>div:not(.care-art){position:relative;z-index:1}
.care-icon{font-size:48px;color:#eccb90}
.care-card .eyebrow{color:#f6d8a3}.care-card h3{font-size:33px;color:#fff8e8;max-width:540px}.care-card p{font-size:14px;color:#e7eadd}
.btn{border-radius:100px}.btn-gold{background:#efd69e;color:#244835}.btn-dark{background:#335c44;color:#fff7ea}.btn-light{background:#e9eee2;color:#2d563f}.btn-outline{color:#284c3b;border-color:#b7c8ab}
.bottom-wish{color:#a69772;letter-spacing:.16em}
.mobile-nav{background:rgba(255,252,241,.96);border-top:1px solid #e6ddc9;backdrop-filter:blur(14px)}
.mobile-nav button{color:#3d6347}.mobile-nav span{color:#8a9b75}
.modal-overlay{background:rgba(28,48,35,.68)}.modal-sheet{background:#fcf8ef;border:1px solid #ddcfaf}
.modal-title{color:#2c4f3b}.modal-top{border-color:#e4dbc5}.modal-top-mark b{color:#a17a40}
.item-card{background:#fffdf7;border:1px solid #e6dec9;border-radius:17px;box-shadow:0 6px 20px rgba(55,77,51,.04)}
.item-card h3{color:#2b4d3b}.pill{background:#ecf0e3;color:#436f4e}
.link-action{color:#8c6c40}.notice{background:#f9f0da;border-color:#e8d7ad;color:#775c37}
.wifi-banner{background:linear-gradient(125deg,#315940,#718b67)}.wifi-secret{border-color:#d5c4a0;background:#fffef8}
.choice-btn.active{background:#416e53;border-color:#416e53}.form-field input,.form-field textarea,.form-field select,.admin-login input{background:#fffef8;border-color:#ddd7c5}
.nature-list-card{display:block;overflow:hidden}.nature-list-image{width:100%;height:135px;object-fit:cover;display:block;border-radius:12px;margin-bottom:13px;background:#dbe4cc}
/* Matching nature-inspired management console */
.admin-page{background:radial-gradient(circle at right top,#e7eddd,transparent 47%),#faf5e9}
.admin-header{position:sticky;top:0;z-index:4}.admin-preview{color:#587b5d}
.admin-shell{padding-top:42px}.admin-login{background:#fffdf5;border:1px solid #e4d9bf;box-shadow:0 24px 55px rgba(74,85,60,.10);border-radius:25px;overflow:hidden;position:relative}
.admin-login:before{content:"";height:90px;display:block;margin:-36px -36px 24px;background:#d0ddc4 url('/images/rishikesh-valley.svg') center 56%/cover}
.admin-login h1,.admin-intro h1{color:#294936;letter-spacing:-.045em}
.admin-intro h1{font-size:clamp(34px,4vw,56px)}
.admin-intro p{color:#798473}.stats-grid{gap:16px}
.stat-card{position:relative;overflow:hidden;border-radius:20px;background:#fffdf7;border:1px solid #e5dcc6;box-shadow:0 12px 28px rgba(58,74,50,.06);padding:22px;min-height:119px}
.stat-card:after{content:"❋";position:absolute;right:15px;bottom:-5px;color:#dfd4b9;opacity:.5;font-size:67px;line-height:1}
.stat-card:nth-child(2){background:#f2f5e9}.stat-card:nth-child(3){background:#fff6e6}.stat-card:nth-child(4){background:#edf1e7}
.stat-card strong{color:#335742;font-size:34px;position:relative;z-index:1}.stat-card small{color:#6f806c;position:relative;z-index:1;font-weight:650}
.admin-tabs{gap:8px;border-bottom:0;padding-bottom:13px}.admin-tabs button{border:1px solid #e2ddcc;border-radius:999px;background:#fffdf5;color:#58705b;padding:10px 16px;transition:background .2s}
.admin-tabs button.active{background:#385f48;color:#fff8ed;border-color:#385f48}
.admin-tabs button:hover:not(.active){background:#eaf0e3}
.admin-panel{background:#fffdf7;border-radius:22px;border:1px solid #e3ddc9;box-shadow:0 15px 33px rgba(58,76,54,.05)}
.panel-head h2{color:#2d523c}.icon-btn{background:#f4f5e9;border:1px solid #dfe4d5;color:#335c42;border-radius:9px}
.row-table th{color:#7a8c75}.admin-editor-row{position:relative}
.admin-row-thumbnail{height:124px;width:100%;object-fit:cover;border-radius:11px;margin-bottom:15px;background:#e4eadb}
.tiny-status{background:#e8f0e4}.tiny-status.off{background:#f7e8df}
/* Layout tuned to low-end mobile devices */
@media(max-width:850px){.services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-intro{align-items:flex-start}}
@media(max-width:650px){
 .header{height:67px;padding:0 17px}.logo-mark{width:35px;height:35px}.logo-type{font-size:12px}
 .hero{min-height:383px}.hero-photo{background-position:50% center}
 .hero::after{background:linear-gradient(90deg,rgba(19,52,36,.83),rgba(23,54,39,.55) 68%,rgba(28,56,39,.13))}
 .hero-content{padding:47px 23px 42px}.hero h1{font-size:47px;margin:19px 0 14px}.hero p{font-size:14px;max-width:300px}.hero-eyebrow{font-size:10px}.hero-chips{font-size:8px;gap:12px;margin-top:17px}.hero-explore{margin-top:25px;padding:10px 17px;font-size:12px}
 .welcome{padding:31px 20px 21px}.welcome h2{font-size:31px}.welcome p{font-size:12.5px}
 .quick-band{margin:0 14px 31px;padding:12px 7px;gap:6px;border-radius:17px}.quick-band>div{gap:7px;padding:5px 2px}.quick-band strong,.quick-band small{font-size:10px}.mini-icon{width:29px;height:29px;min-width:29px;font-size:14px}
 .section{padding:6px 14px 33px}.section-heading{margin-bottom:17px}.section-heading .section-decoration{font-size:32px}.section h2{font-size:32px}.section-description{font-size:12px}
 .services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .service-card{min-height:190px;border-radius:18px}.service-media{aspect-ratio:1.45}
 .service-info{padding:13px 11px 14px;min-height:74px}.service-copy{gap:4px}
 .service-copy strong{font-size:13.5px}.service-copy small{font-size:10.5px}.service-go{width:25px;height:25px;font-size:15px}
 .service-media-label{left:8px;bottom:9px;padding:5px 8px;font-size:8px}
 .care-card{margin:7px 14px 27px;padding:25px 21px 27px;gap:9px;min-height:0;border-radius:21px}.care-card:before{width:52%;opacity:.26}
 .care-icon{font-size:35px}.care-card h3{font-size:26px}.care-card p{font-size:12px}
 .admin-login:before{margin:-24px -24px 22px}
 .admin-shell{padding:25px 14px 70px}.admin-panel{border-radius:18px}
 .admin-intro h1{font-size:40px}.admin-tabs button{font-size:11px;padding:9px 13px}
 .stats-grid{gap:10px}.stat-card{padding:15px;min-height:94px}.stat-card strong{font-size:27px}.stat-card small{font-size:10px}
 .admin-row-thumbnail{height:103px}
}
@media(max-width:340px){.service-info{padding:11px 9px}.service-copy strong{font-size:12.6px}.service-media-label{font-size:7px}.quick-band>div{flex-direction:column;align-items:center;text-align:center}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.service-card,.service-cover,.hero-explore{transition:none!important}}
/* Compact visual service editor: imagery enriches admin without creating giant rows. */
.admin-editor-row{display:flex;align-items:center;gap:16px;padding:12px 15px}
.admin-editor-row .item-header{flex:1;min-width:0;align-items:center}
.admin-editor-row .item-header>div:first-child{min-width:0}
.admin-row-thumbnail{display:block;flex:0 0 126px;width:126px;height:86px;object-fit:cover;border-radius:11px;margin:0;background:#e4eadb}
@media(max-width:650px){.admin-editor-row{gap:10px;padding:10px}.admin-row-thumbnail{flex-basis:82px;width:82px;height:84px}.admin-editor-row .item-header{flex-wrap:wrap}.admin-editor-row .admin-controls{width:100%;justify-content:flex-start}}
