/*
Theme Name: HotelJobs Agency
Theme URI: https://hoteljobs.agency/
Author: OpenAI
Description: One-page, responsive hospitality recruitment theme for HotelJobs Agency. Red, grey and white brand palette; editable homepage sections and job listings.
Version: 1.8.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: hoteljobs-agency
*/
:root{--hj-red:#ed1c24;--hj-grey:#858789;--hj-dark:#252729;--hj-text:#343638;--hj-muted:#6c7073;--hj-light:#f4f4f4;--hj-white:#fff;--hj-width:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;color:var(--hj-text);font:16px/1.65 Arial,Helvetica,sans-serif;background:#fff}a{color:var(--hj-red);text-decoration:none}a:hover{opacity:.82}img{max-width:100%;height:auto}h1,h2,h3,h4{line-height:1.08;margin:0 0 18px;font-weight:800;letter-spacing:-.035em}h1{font-size:clamp(2.45rem,4.35vw,4.55rem);text-transform:uppercase;line-height:1.04;letter-spacing:-.04em}h2{font-size:clamp(2rem,4vw,3.5rem);text-transform:uppercase}h3{font-size:1.25rem}p{margin:0 0 16px}.wrap{width:min(calc(100% - 42px),var(--hj-width));margin:auto}.eyebrow{display:flex;align-items:center;gap:12px;color:var(--hj-grey);font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.eyebrow:before{content:"";width:28px;height:3px;background:var(--hj-red)}.accent{color:var(--hj-red)}.muted{color:var(--hj-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 22px;border:1px solid transparent;border-radius:5px;font-size:.9rem;font-weight:700;transition:.2s}.btn-red{background:var(--hj-red);color:#fff}.btn-outline{border-color:#b8babc;color:var(--hj-dark);background:#fff}.btn-dark{background:var(--hj-dark);color:#fff}.site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #ececec}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;max-width:230px}.brand img{max-height:56px;width:auto}.brand-text{font-size:1.3rem;font-weight:900;line-height:1;color:var(--hj-red);letter-spacing:-.05em}.brand-text span{color:var(--hj-grey)}.nav{display:flex;align-items:center;gap:24px}.nav a{color:#444;font-size:.82rem;font-weight:700}.nav a:hover,.nav a:focus{color:var(--hj-red)}.nav .nav-cta{padding:10px 18px;background:var(--hj-red);color:#fff;border-radius:4px}.menu-toggle{display:none;background:none;border:0;font-size:1.6rem;color:var(--hj-dark)}.hero{position:relative;min-height:610px;display:flex;align-items:center;overflow:hidden;background:#fff}.hero-bg{position:absolute;inset:0 0 0 47%;background-position:center 34%;background-size:cover;z-index:0}.hero-inner{position:relative;z-index:1;padding:76px 0;max-width:590px;width:51%;}.hero h1{margin:18px 0 20px}.hero p{max-width:560px;color:#555;font-size:1.08rem}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.quick-links{background:#f2f2f2;border-bottom:1px solid #e6e6e6}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr)}.quick-item{padding:24px 18px;text-align:center;border-right:1px solid #d7d7d7}.quick-item:last-child{border:0}.quick-icon{font-size:1.65rem;color:var(--hj-grey);margin-bottom:5px}.quick-item strong{display:block;color:#292b2d;font-size:.8rem;text-transform:uppercase}.quick-item span{display:block;color:#777;font-size:.75rem;line-height:1.4}.section{padding:88px 0}.section-soft{background:#f5f5f5}.section-dark{background:#292b2d;color:#fff}.section-heading{max-width:720px;margin:0 0 38px}.section-heading.center{margin-left:auto;margin-right:auto;text-align:center}.section-heading.center .eyebrow{justify-content:center}.section-heading p{color:var(--hj-muted);max-width:650px}.section-dark .section-heading p{color:#d0d0d0}.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.photo{min-height:360px;background:#ddd center/cover no-repeat;border-radius:3px}.about-copy p{color:#626669}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{background:#fff;border:1px solid #e7e7e7;box-shadow:0 8px 24px rgba(0,0,0,.045);overflow:hidden}.service-image{height:150px;background:#ddd center/cover no-repeat}.service-body{padding:20px}.service-body h3{margin-bottom:9px}.service-body p{font-size:.9rem;color:#64686b}.arrow-link{font-size:.86rem;font-weight:800;color:var(--hj-red)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.stat{padding:22px 12px;border-right:1px solid #56585a}.stat:last-child{border:0}.stat strong{display:block;color:var(--hj-red);font-size:clamp(2rem,4vw,3.3rem);line-height:1;font-weight:900}.stat span{display:block;margin-top:10px;color:#fff;font-size:.82rem}.career{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:40px}.career-visual{min-height:330px;background:#ddd center/cover no-repeat;position:relative}.career-tag{position:absolute;right:-12px;bottom:22px;background:#fff;padding:17px 22px;box-shadow:0 8px 24px #0002;border-left:4px solid var(--hj-red);font-weight:700}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.feature{border-top:2px solid var(--hj-red);padding-top:18px}.feature-icon{font-size:1.6rem;color:#fff;margin-bottom:12px}.feature h3{color:#fff;font-size:1rem}.feature p{color:#c6c8c9;font-size:.82rem}.testimonial-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:45px;align-items:center}.quote{border-left:3px solid var(--hj-red);padding:8px 0 8px 24px;color:#555;font-size:1.05rem}.quote cite{display:block;margin-top:18px;font-size:.8rem;font-style:normal;font-weight:700;color:#333}.client-logos{display:flex;flex-wrap:wrap;justify-content:space-around;align-items:center;gap:28px;margin-top:38px;padding-top:28px;border-top:1px solid #e5e5e5;color:#777;font-weight:800;letter-spacing:.08em}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:start}.contact-details{color:#555}.contact-details p{margin:12px 0}.contact-form{background:#fff;padding:24px;border-radius:6px;box-shadow:0 8px 32px rgba(0,0,0,.08)}.contact-form label{display:block;font-size:.78rem;font-weight:700;color:#555;margin-bottom:5px}.contact-form input,.contact-form textarea,.contact-form select{width:100%;padding:12px;border:1px solid #ddd;border-radius:3px;font:inherit;margin-bottom:14px}.contact-form textarea{min-height:110px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.site-footer{background:#222426;color:#ddd;padding:35px 0 20px}.footer-top{display:flex;justify-content:space-between;gap:25px;align-items:center}.footer-nav{display:flex;flex-wrap:wrap;gap:18px}.footer-nav a{font-size:.8rem;color:#eee}.copyright{border-top:1px solid #484a4b;margin-top:24px;padding-top:15px;font-size:.75rem;color:#aaa;display:flex;justify-content:space-between;gap:20px}.jobs-list{display:grid;gap:12px}.job-item{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px;background:#fff;border:1px solid #e5e5e5}.job-item h3{margin:0 0 4px}.job-item p{margin:0;color:#777;font-size:.85rem}.notice{padding:14px 18px;background:#fff5f5;border-left:3px solid var(--hj-red);font-size:.88rem}.admin-note{font-size:.8rem;color:#777}.wp-block-button__link{background:var(--hj-red)}@media(max-width:900px){.hero-inner{width:58%;max-width:560px}.hero-bg{left:43%;}.nav{gap:14px}.cards{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:repeat(2,1fr)}.split,.career,.contact-grid,.testimonial-grid{grid-template-columns:1fr}.hero-bg{left:28%;opacity:.65}.quick-grid{grid-template-columns:repeat(2,1fr)}.quick-item:nth-child(2){border-right:0}.quick-item:nth-child(-n+2){border-bottom:1px solid #d7d7d7}}@media(max-width:680px){.hero{min-height:650px;align-items:flex-start}.hero-inner{width:100%;max-width:100%;padding:54px 0 280px}.hero-bg{inset:auto 0 0;height:300px;opacity:1;background-position:center 28%}.hero h1{font-size:clamp(2.25rem,9vw,3.2rem)}.wrap{width:min(calc(100% - 30px),var(--hj-width))}.header-inner{min-height:66px}.brand{max-width:185px}.brand img{max-height:48px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:66px;left:0;right:0;background:#fff;padding:18px 22px 22px;border-bottom:1px solid #ddd;box-shadow:0 12px 20px #0001;flex-direction:column;align-items:stretch;gap:15px}.nav.is-open{display:flex}.nav .nav-cta{text-align:center}.hero{min-height:540px}.hero-bg{inset:0;opacity:.24}.hero{background:linear-gradient(90deg,rgba(255,255,255,.95),rgba(255,255,255,.82))}.hero-inner{padding:65px 0}.hero p{font-size:.98rem}.section{padding:62px 0}.quick-item{padding:18px 8px}.cards{grid-template-columns:1fr}.service-image{height:190px}.stats{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2){border:0}.stat:nth-child(-n+2){border-bottom:1px solid #56585a}.feature-grid{grid-template-columns:1fr 1fr;gap:18px}.form-row{grid-template-columns:1fr}.footer-top,.copyright{flex-direction:column;align-items:flex-start}.career-visual{min-height:250px}.job-item{align-items:flex-start;flex-direction:column}.client-logos{gap:18px}.section-heading{margin-bottom:28px}}

/* v1.1 visual refinements: balanced type scale and intentional image fallbacks */
h1{font-size:clamp(2.35rem,4.4vw,4.45rem);letter-spacing:-.045em;line-height:1.02}
h2{font-size:clamp(1.8rem,3.2vw,3rem)}
.hero{min-height:610px}
.hero-bg{background-color:#e9e9e9;background-image:linear-gradient(135deg,#f7f7f7 0%,#e6e6e6 58%,#d4d4d4 100%)}

.photo{position:relative;background-color:#ededed;background-image:linear-gradient(145deg,#f5f5f5,#dedede);overflow:hidden}

.career-visual{background-color:#e7e7e7;background-image:linear-gradient(135deg,#f5f5f5,#d8d8d8)}


.service-image{background-color:#e5e5e5}
@media(max-width:680px){.hero{min-height:650px;align-items:flex-start}.hero-inner{width:100%;max-width:100%;padding:54px 0 280px}.hero-bg{inset:auto 0 0;height:300px;opacity:1;background-position:center 28%}.hero h1{font-size:clamp(2.25rem,9vw,3.2rem)}h1{font-size:clamp(2.25rem,10vw,3.3rem)}h2{font-size:clamp(1.8rem,8vw,2.5rem)}.hero{min-height:560px}.hero-bg{inset:0;opacity:.3}.hero-bg:after{right:5%;top:24%;font-size:2.3rem}.photo{min-height:260px}}


/* VERSION 1.4 — soft photographic fades inspired by the approved full-page visual */
.hero{isolation:isolate;background:#fff}
.hero-bg{left:45%;right:0;opacity:1;background-position:center 34%;background-size:cover}
.hero-bg:before{
 content:"";position:absolute;inset:0;pointer-events:none;
 background:
  linear-gradient(90deg,#fff 0%,rgba(255,255,255,.94) 7%,rgba(255,255,255,.72) 19%,rgba(255,255,255,.28) 37%,rgba(255,255,255,0) 57%),
  linear-gradient(0deg,rgba(255,255,255,.10),transparent 20%,transparent 82%,rgba(255,255,255,.08));
}
.hero-bg:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 55%,rgba(255,255,255,.10))}
.hero-inner{width:49%;max-width:590px}
.photo,.service-image,.career-visual{position:relative;overflow:hidden;background-color:#e8e8e8}
.photo:after{
 content:"";position:absolute;inset:0;pointer-events:none;
 background:linear-gradient(90deg,rgba(255,255,255,.48),transparent 24%),
            linear-gradient(0deg,rgba(255,255,255,.42),transparent 34%);
}
.service-image:after{
 content:"";position:absolute;inset:0;pointer-events:none;
 background:linear-gradient(0deg,rgba(255,255,255,.82),rgba(255,255,255,.18) 25%,transparent 58%);
}
.career-visual:after{
 content:"";position:absolute;inset:0;pointer-events:none;
 background:linear-gradient(90deg,rgba(255,255,255,.76),transparent 35%),
            linear-gradient(0deg,rgba(255,255,255,.30),transparent 38%);
}
.career-tag{z-index:2}
@media(max-width:900px){
 .hero-bg{left:40%;opacity:1}
 .hero-bg:before{background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.84) 12%,rgba(255,255,255,.35) 43%,transparent 70%)}
 .hero-inner{width:56%}
}
@media(max-width:680px){
 .hero{min-height:650px;align-items:flex-start;background:#fff}
 .hero-inner{width:100%;max-width:100%;padding:56px 0 300px}
 .hero-bg{inset:auto 0 0;height:330px;opacity:1;background-position:center 28%}
 .hero-bg:before{
  background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.92) 5%,rgba(255,255,255,.46) 27%,transparent 56%),
             linear-gradient(90deg,rgba(255,255,255,.22),transparent 50%);
 }
 .hero-bg:after{background:linear-gradient(0deg,rgba(255,255,255,.12),transparent 40%)}
 .photo:after{background:linear-gradient(0deg,rgba(255,255,255,.42),transparent 42%)}
}

/* VERSION 1.5 — careers image framing and four editable testimonial portrait slots */
.career-visual{min-height:420px;background-position:center 12%;background-size:cover}
.testimonial-portraits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin:34px 0 4px}
.testimonial-portrait{text-align:center;color:#777;font-size:.78rem;font-weight:700}
.portrait-frame{width:104px;height:104px;margin:0 auto 10px;border-radius:50%;overflow:hidden;border:3px solid #fff;box-shadow:0 3px 18px rgba(0,0,0,.12);background:linear-gradient(145deg,#f2f2f2,#dedede);display:flex;align-items:center;justify-content:center}
.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:center 24%;display:block}
.portrait-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border:1px dashed #b7b7b7;border-radius:50%;color:#ed1c24;font-size:2rem;font-weight:400}
@media(max-width:900px){.career-visual{min-height:390px;background-position:center 10%}}
@media(max-width:680px){.career-visual{min-height:330px;background-position:center 8%}.testimonial-portraits{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.portrait-frame{width:90px;height:90px}}


/* VERSION 1.7 — brand-led headline hierarchy: vivid red + charcoal grey */
:root{--hj-red:#ed1c24;--hj-grey:#858789;--hj-dark:#303236;--hj-text:#343638;--hj-muted:#6c7073}
.heading-red{color:var(--hj-red)!important}
.heading-grey{color:var(--hj-dark)!important}
.hero h1 .heading-red,.hero h1 .heading-grey{display:inline-block}
.about-copy h2 .heading-red,.about-copy h2 .heading-grey{display:inline-block}
.section-heading h2{color:var(--hj-dark)}
.section-heading h2 .accent{color:var(--hj-red)}
.about-copy h2{color:var(--hj-dark)}
.career h2{color:var(--hj-dark)}
.career h2 .accent{color:var(--hj-red)}
.section-dark .section-heading h2{color:#fff}
.section-dark .section-heading h2 .accent{color:var(--hj-red)}
.testimonial-portrait span:not(.portrait-placeholder){color:#666}
.portrait-frame{border-color:#fff;box-shadow:0 4px 18px rgba(48,50,54,.16)}
.portrait-placeholder{color:var(--hj-red);border-color:#b8babc}

/* VERSION 1.7 — refined, consistent photographic fades and distinct hospitality imagery */
.hero-bg{background-position:center 38%;}
.hero-bg:before{background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.97) 8%,rgba(255,255,255,.78) 22%,rgba(255,255,255,.32) 40%,rgba(255,255,255,0) 61%),linear-gradient(0deg,rgba(255,255,255,.12),transparent 26%,transparent 82%,rgba(255,255,255,.06));}
.photo:after{background:linear-gradient(90deg,rgba(255,255,255,.28),transparent 30%),linear-gradient(0deg,rgba(255,255,255,.24),transparent 36%);}
.service-image:after{background:linear-gradient(0deg,rgba(255,255,255,.72),rgba(255,255,255,.20) 24%,transparent 55%);}
.career-visual{background-position:center 24%;background-size:cover;}
.career-visual:after{background:linear-gradient(90deg,rgba(255,255,255,.52) 0%,rgba(255,255,255,.18) 24%,transparent 48%),linear-gradient(0deg,rgba(255,255,255,.34),transparent 28%);}
@media(max-width:900px){.hero-bg:before{background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.88) 12%,rgba(255,255,255,.42) 42%,transparent 72%),linear-gradient(0deg,rgba(255,255,255,.10),transparent 28%);}.career-visual:after{background:linear-gradient(90deg,rgba(255,255,255,.38),transparent 45%),linear-gradient(0deg,rgba(255,255,255,.28),transparent 30%);}}
@media(max-width:680px){.hero-bg{background-position:center 30%;}.hero-bg:before{background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.88) 14%,rgba(255,255,255,.24) 52%,transparent 78%);}.career-visual{background-position:center 20%;}.career-visual:after{background:linear-gradient(180deg,rgba(255,255,255,.10),transparent 38%,rgba(255,255,255,.30));}}


/* VERSION 1.8 — editable testimonial copy paired with each portrait */
.testimonial-intro{max-width:760px;margin-bottom:28px}
.testimonial-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.testimonial-card{background:#fff;border:1px solid #e7e7e7;border-radius:6px;padding:24px;box-shadow:0 8px 26px rgba(0,0,0,.045);min-width:0}
.testimonial-card-person{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.testimonial-card .portrait-frame{flex:0 0 76px;width:76px;height:76px;margin:0}
.testimonial-person-meta{display:flex;flex-direction:column;gap:5px;min-width:0}
.testimonial-person-meta strong{color:var(--hj-dark);font-size:.95rem}
.testimonial-person-meta span{color:var(--hj-muted);font-size:.78rem;line-height:1.5}
.testimonial-card-quote{margin:0;padding:0;border:0;color:#555;font-size:.96rem;line-height:1.75}
.testimonial-empty{margin:0;color:#929292;font-size:.85rem;font-style:italic}
@media(max-width:680px){.testimonial-cards{grid-template-columns:1fr}.testimonial-card{padding:20px}}
