/* Pho Hillton — Cassiopeia child template styles (rebuild of the WordPress design) */
@import url("https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@400;600;700&display=swap");

:root{
  --ph-orange:#EF8B17; --ph-orange-dark:#C9700C; --ph-black:#000000; --ph-ink:#1C1C1C; --ph-muted:#69727D;
  --ph-light:#F5F7F9; --ph-line:#E6E9ED; --ph-white:#FFFFFF; --ph-green:#2DB742;
  --cassiopeia-color-primary:#000000; --cassiopeia-color-link:#EF8B17; --cassiopeia-color-hover:#C9700C;
}
html{overflow-x:clip;scroll-behavior:smooth}
body.site{background:var(--ph-white);color:var(--ph-ink);font-family:"Josefin Sans",system-ui,Arial,sans-serif;font-size:16px;line-height:1.7}
.site-grid{gap:0}
h1,h2,h3{font-family:"Josefin Sans",sans-serif;font-weight:700;line-height:1.15;margin:0;color:var(--ph-ink);text-wrap:balance}
.ph h2{font-size:clamp(28px,4vw,40px)}
.ph .eyebrow{font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--ph-ink);margin-bottom:14px;display:flex;align-items:center;gap:14px;font-weight:600}
.ph .eyebrow::before,.ph .eyebrow::after{content:"";width:26px;height:1px;background:var(--ph-orange)}
.ph .center{text-align:center}
.ph .center .eyebrow{justify-content:center}
.ph p{margin:0 0 16px;max-width:42rem}
.ph .center p{margin-left:auto;margin-right:auto}
.ph .btn{display:inline-block;padding:16px 34px;background:var(--ph-orange);color:#fff;font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:13px;text-decoration:none;border-radius:2px}
.ph .btn:hover{background:var(--ph-orange-dark);color:#fff;text-decoration:none}
.ph .btn-dark{background:var(--ph-black)}
.ph .btn-dark:hover{background:#333}
.ph img{max-width:100%;height:auto}
.ph-full{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.ph .wrap{max-width:1140px;margin:0 auto;padding:0 24px}
.ph section{padding:90px 0}
.ph .pattern{background-image:url(../../../../images/ph/bg-1.png);background-repeat:no-repeat;background-position:center top;background-size:100% auto}
.ph .pattern-2{background-image:url(../../../../images/ph/bg-2.png);background-repeat:no-repeat;background-position:center bottom;background-size:100% auto}

/* hide Cassiopeia chrome */
.page-header, .article-info, .breadcrumb, .item-page .article-header{display:none}
.com-content-article{padding:0}
.container-component{padding:0 !important}
.container-component .grid-child{padding-inline:0;max-width:none}

/* ---------- top bar (custom module in "topbar") ---------- */
.site-grid .container-header .container-topbar, .container-topbar{grid-column:1 / -1;padding:0 !important;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:none}
.container-topbar .mod-custom{margin:0}
.ph-notice{background:var(--ph-orange);color:#fff;text-align:center;font-size:19px;font-weight:600;padding:8px 16px}
.ph-notice span, .ph-notice strong{color:var(--ph-black);font-weight:600}
.ph-info{background:var(--ph-black);color:#fff;font-size:13px;font-weight:600}
.ph-info .wrap{max-width:1140px;margin:0 auto;padding:10px 24px;display:flex;justify-content:space-between;gap:12px 28px;flex-wrap:wrap}
.ph-info .social{display:flex;gap:14px;align-items:center}
.ph-info a{color:#fff;text-decoration:none}
.ph-info a:hover{color:var(--ph-orange)}
.ph-info .details{display:flex;gap:24px;flex-wrap:wrap}
.ph-info .details > *::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--ph-orange);margin-right:8px;vertical-align:middle}

/* ---------- header ---------- */
.site-grid .container-header.full-width, .container-header{background:var(--ph-black) !important;position:sticky;top:0;z-index:20;display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:32px;padding:0 max(24px, calc(50% - 570px))}
.site-grid .container-header .grid-child, .container-header .grid-child{grid-column:auto;padding:0;margin:0;max-width:none;width:auto}
.site-grid .container-header .container-nav{grid-column:auto;display:flex;align-items:center;justify-content:flex-end !important;margin-left:auto}
.container-header .container-nav .navbar{margin-left:auto}
.container-header .navbar-brand{display:block;padding:8px 0;color:#fff;text-decoration:none;font-weight:700}
.container-header .navbar-brand img{height:84px;width:auto}
.container-header .navbar-brand .site-description{display:none}
.container-header .mod-menu{gap:30px;margin:0;justify-content:flex-end}
.container-header .mod-menu > li > a{color:#fff;font-weight:600;font-size:13px;letter-spacing:.18em;text-transform:uppercase;padding:.5rem 0}
.container-header .mod-menu > li > a:hover, .container-header .mod-menu > li.active > a{color:var(--ph-orange);text-decoration:none}
.container-header .mod-menu > li > a.ph-order{background:var(--ph-orange);color:#fff;padding:10px 18px;border-radius:2px}
.container-header .mod-menu > li > a.ph-order:hover{background:var(--ph-orange-dark);color:#fff}
.container-header .navbar-toggler{border:1px solid #444;border-radius:4px;padding:8px 10px;background:#000;color:#fff;margin-left:auto}
@media (max-width:991.98px){
  .site-grid .container-header.full-width{grid-template-columns:1fr auto}
  .container-header .navbar{position:static}
  .container-header .navbar-collapse{position:absolute;left:0;right:0;top:100%;background:var(--ph-black);border-top:1px solid #222;padding:8px 24px 16px}
  .container-header .mod-menu{flex-direction:column;gap:0;align-items:stretch}
  .container-header .mod-menu > li > a{display:block;padding:14px 0;border-bottom:1px solid #222}
  .container-header .mod-menu > li > a.ph-order{margin-top:10px;text-align:center}
  .container-header .navbar-brand img{height:56px}
}

/* ---------- hero ---------- */
.ph .ph-hero{background:var(--ph-light);padding:0}
.ph .ph-hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;padding-top:80px;padding-bottom:80px}
.ph .ph-hero h1{font-size:clamp(36px,5.5vw,62px)}
.ph .ph-hero h1 em{font-style:normal;color:var(--ph-orange)}
.ph .ph-hero p{font-size:17px;color:var(--ph-muted);margin:20px 0 28px}
.ph .ph-hero .actions{display:flex;gap:14px;flex-wrap:wrap}
.ph .ph-hero .photo img{width:100%;max-height:540px;object-fit:cover;border-radius:4px;box-shadow:0 24px 48px rgba(0,0,0,.15)}
@media (max-width:820px){.ph .ph-hero .wrap{grid-template-columns:1fr}.ph .ph-hero .photo img{max-height:380px}}

/* ---------- about ---------- */
.ph .ph-about .wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.ph .ph-about .body h2{margin-bottom:18px}
.ph .ph-about .badges{display:flex;gap:28px;margin-top:24px;flex-wrap:wrap}
.ph .ph-about .badges div{border-left:3px solid var(--ph-orange);padding-left:14px}
.ph .ph-about .badges b, .ph .ph-about .badges strong{display:block;font-size:12px;letter-spacing:.2em;text-transform:uppercase}
.ph .ph-about .badges small{color:var(--ph-muted)}
@media (max-width:820px){.ph .ph-about .wrap{grid-template-columns:1fr}}

/* ---------- dishes ---------- */
.ph .ph-dishes{background:var(--ph-white)}
.ph .ph-dishes .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:48px}
.ph .ph-dishes .grid > div{text-align:center}
.ph .ph-dishes .grid img{width:150px;height:150px;object-fit:contain;margin:0 auto 18px;display:block}
.ph .ph-dishes .grid b, .ph .ph-dishes .grid strong{display:block;font-size:14px;letter-spacing:.2em;text-transform:uppercase}
.ph .ph-dishes .order{margin-top:56px;background:var(--ph-black);color:#fff;padding:36px 32px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;border-radius:4px}
.ph .ph-dishes .order h3{color:#fff;font-size:24px;margin-bottom:6px}
.ph .ph-dishes .order p{color:#bbb;margin:0}
@media (max-width:760px){.ph .ph-dishes .grid{grid-template-columns:1fr 1fr}}

/* ---------- steps ---------- */
.ph .ph-steps{background:var(--ph-light)}
.ph .ph-steps .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:48px}
.ph .ph-steps .grid > div{background:#fff;padding:28px 24px;border-top:3px solid var(--ph-orange)}
.ph .ph-steps .grid i, .ph .ph-steps .grid em{font-style:normal;font-size:40px;font-weight:700;color:var(--ph-orange);line-height:1;display:block;margin-bottom:12px}
.ph .ph-steps .grid b, .ph .ph-steps .grid strong{display:block;font-size:13px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:10px}
.ph .ph-steps .grid p{font-size:15px;color:var(--ph-muted);margin:0}
@media (max-width:900px){.ph .ph-steps .grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.ph .ph-steps .grid{grid-template-columns:1fr}}

/* ---------- hours / contact ---------- */
.ph .ph-contact .wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.ph .ph-contact .phone{font-size:clamp(34px,5vw,48px);font-weight:700;color:var(--ph-ink);text-decoration:none;display:block;margin:12px 0 4px;font-variant-numeric:tabular-nums}
.ph .ph-contact .phone:hover{color:var(--ph-orange)}
.ph .ph-contact dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:10px 24px}
.ph .ph-contact dt{font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;padding-top:3px}
.ph .ph-contact dd{margin:0;color:var(--ph-muted)}
.ph .ph-contact .hours{background:var(--ph-black);color:#fff;padding:36px 32px;border-radius:4px}
.ph .ph-contact .hours h3{color:#fff;font-size:22px;margin-bottom:18px}
.ph .ph-contact .hours table{width:100%;border-collapse:collapse}
.ph .ph-contact .hours td{padding:10px 0;border-bottom:1px solid #2a2a2a;font-size:15px}
.ph .ph-contact .hours td:last-child{text-align:right;color:var(--ph-orange);font-weight:700;font-variant-numeric:tabular-nums}
.ph .ph-contact .hours tr:last-child td{border-bottom:0}
.ph .ph-contact .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.ph .btn-wa{background:var(--ph-green)}
.ph .btn-wa:hover{background:#249634}
@media (max-width:820px){.ph .ph-contact .wrap{grid-template-columns:1fr}}

/* ---------- footer (custom module in footer position) ---------- */
.container-footer{background:var(--ph-black) !important;color:#bbb;padding:0 !important}
.container-footer .grid-child{max-width:none;padding:0}
.ph-footer{padding:56px 24px 28px;text-align:center}
.ph-footer .cols{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;gap:32px;align-items:center;text-align:left}
.ph-footer .cols b, .ph-footer .cols strong{display:block;color:#fff;letter-spacing:.2em;text-transform:uppercase;font-size:13px;margin-bottom:8px}
.ph-footer .cols img{height:150px;width:auto;display:block;margin:0 auto}
.ph-footer .cols > div:last-child{text-align:right}
.ph-footer a{color:#fff;text-decoration:none}
.ph-footer a:hover{color:var(--ph-orange)}
.ph-footer .social{display:flex;justify-content:center;gap:12px;margin:36px 0 18px}
.ph-footer .social a{width:40px;height:40px;border-radius:4px;background:#1c1c1c;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}
.ph-footer .links{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;font-size:13px;letter-spacing:.1em;text-transform:uppercase}
.ph-footer .copy{margin-top:22px;font-size:12px;color:#777}
@media (max-width:760px){.ph-footer .cols{grid-template-columns:1fr;text-align:center}.ph-footer .cols > div:last-child{text-align:center}}
.back-to-top-link{background:var(--ph-orange);border-color:var(--ph-orange)}


/* ===== polish pass ===== */
.site-grid .container-header.full-width, .container-header{position:relative;box-shadow:0 6px 24px rgba(0,0,0,.25)}
.ph-notice{font-size:16px;padding:7px 16px;letter-spacing:.02em}
.ph-info{font-size:12.5px;border-bottom:1px solid #1a1a1a}
.ph-info .wrap{padding:8px 24px}
.container-header .navbar-brand{padding:10px 0}
.container-header .navbar-brand img{height:76px}
.container-header .mod-menu > li > a{position:relative}
.container-header .mod-menu > li > a:not(.ph-order)::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--ph-orange);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.container-header .mod-menu > li > a:not(.ph-order):hover::after, .container-header .mod-menu > li.active > a:not(.ph-order)::after{transform:scaleX(1)}

/* hero */
.ph .ph-hero{background:linear-gradient(135deg,#FFF7EC 0%,#F5F7F9 55%,#FFFFFF 100%);position:relative;overflow:hidden}
.ph .ph-hero.pattern{background-image:url(../../../../images/ph/bg-1.png),linear-gradient(135deg,#FFF7EC 0%,#F5F7F9 55%,#FFFFFF 100%);background-size:100% auto,auto;background-position:center top,0 0;background-repeat:no-repeat,no-repeat}
.ph .ph-hero .wrap{padding-top:96px;padding-bottom:96px}
.ph .ph-hero h1{font-size:clamp(38px,5.8vw,68px);letter-spacing:-.01em}
.ph .ph-hero p{font-size:18px}
.ph .ph-hero .photo{position:relative}
.ph .ph-hero .photo::before{content:"";position:absolute;inset:18px -18px -18px 18px;border:2px solid var(--ph-orange);border-radius:6px;z-index:0}
.ph .ph-hero .photo img{position:relative;z-index:1;border-radius:6px;max-height:560px}
.ph .ph-hero .chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.ph .ph-hero .chips span{background:#fff;border:1px solid var(--ph-line);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;letter-spacing:.04em}

/* about */
.ph .ph-about{padding:100px 0}
.ph .ph-about .body p{color:#444;font-size:16.5px}
.ph .ph-about .badges{gap:22px 36px}
.ph .ph-about .badges b, .ph .ph-about .badges strong{color:var(--ph-ink)}

/* dishes */
.ph .ph-dishes.pattern-2{background-color:var(--ph-white)}
.ph .ph-dishes .grid{gap:24px}
.ph .ph-dishes .grid > div{background:#fff;border:1px solid var(--ph-line);border-radius:8px;padding:34px 18px 26px;transition:transform .25s ease, box-shadow .25s ease}
.ph .ph-dishes .grid > div:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.08)}
.ph .ph-dishes .grid img{width:130px;height:130px}
.ph .ph-dishes color:var(--ph-ink)}
.ph .ph-dishes .grid small{display:block;color:var(--ph-muted);font-size:13px;margin-top:6px}
.ph .ph-dishes .order{background:var(--ph-black);background-image:radial-gradient(circle at 90% 10%,rgba(239,139,23,.35),transparent 45%);border-radius:8px;padding:40px 36px}

/* steps */
.ph .ph-steps .grid > div{border-radius:8px;border-top-width:4px}
.ph .ph-steps .grid i, .ph .ph-steps .grid em{font-family:"Josefin Sans",sans-serif;font-size:44px}

/* contact */
.ph .ph-contact{padding:100px 0}
.ph .ph-contact .hours{border-radius:8px;background-image:radial-gradient(circle at 100% 0%,rgba(239,139,23,.3),transparent 50%)}
.ph .ph-contact .hours h3{letter-spacing:.06em;text-transform:uppercase;font-size:18px}
.ph .ph-contact .hours td{padding:13px 0}

/* footer */
.ph-footer{background-image:url(../../../../images/ph/bg-2.png);background-repeat:no-repeat;background-position:center bottom;background-size:100% auto;background-blend-mode:soft-light}

/* responsive spacing */
@media (max-width:820px){
  .ph section, .ph .ph-about, .ph .ph-contact{padding:64px 0}
  .ph .ph-hero .wrap{padding-top:48px;padding-bottom:64px;gap:36px}
  .ph .ph-hero .photo{order:-1}
  .ph .ph-hero .photo::before{display:none}
  .ph .ph-hero .photo img{max-height:320px}
  .ph h2{font-size:clamp(26px,7vw,34px)}
  .ph-info .wrap{justify-content:center;text-align:center}
  .ph-info .details{justify-content:center;gap:10px 18px}
}
@media (max-width:520px){
  .ph .ph-dishes .grid{grid-template-columns:1fr 1fr;gap:14px}
  .ph .ph-dishes .grid img{width:96px;height:96px}
  .ph .ph-dishes .grid > div{padding:22px 10px 18px}
  .ph .ph-dishes font-size:12px;letter-spacing:.12em}
  .ph .ph-dishes .order{padding:28px 22px}
  .ph .ph-contact .phone{font-size:32px}
  .ph .ph-contact .hours{padding:26px 20px}
  .ph .btn{padding:14px 22px;font-size:12px}
  .ph-notice{font-size:14px}
  .ph-info .social{display:none}
}

.ph .ph-about .badges{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px}
.ph .ph-about .badges div{border-left:0;padding:18px 18px 16px;background:var(--ph-light);border-radius:8px;border-top:3px solid var(--ph-orange)}
.ph .ph-about .badges strong{display:block;font-size:12px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:4px}
.ph .ph-about .badges small{font-size:13px}
@media (max-width:520px){.ph .ph-about .badges{grid-template-columns:1fr}}
.container-header .navbar-brand img{height:88px}
@media (max-width:767px){.ph-info .details > strong:last-child{display:none}}
@media (max-width:991.98px){.container-header .navbar-brand img{height:64px}}

.ph .ph-dishes .grid{margin-bottom:56px}
.ph .ph-dishes .order{margin-top:0}
@media (max-width:520px){.ph .ph-dishes .grid{margin-bottom:28px}}

.container-footer .grid-child{display:block;width:100%}
.container-footer .mod-custom{width:100%;flex:1 1 100%;margin:0}


/* ===== hero slideshow ===== */
.ph .ph-slider{position:relative;height:clamp(520px,78vh,760px);overflow:hidden;background:#000;padding:0}
.ph .ph-slider .slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1s ease;display:flex;align-items:center;color:#fff}
.ph .ph-slider .slide::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.45) 55%,rgba(0,0,0,.15) 100%)}
.ph .ph-slider .slide.is-active{opacity:1;z-index:1}
.ph .ph-slider .slide-dark{background-color:#0b0b0b;background-size:100% auto;background-position:center bottom;background-blend-mode:soft-light}
.ph .ph-slider .slide-dark::before{background:radial-gradient(circle at 80% 20%,rgba(239,139,23,.35),transparent 50%)}
.ph .ph-slider .wrap{position:relative;width:100%}
.ph .ph-slider .caption{max-width:620px;animation:ph-rise .9s ease both}
.ph .ph-slider .slide.is-active .caption{animation:ph-rise .9s ease both}
@keyframes ph-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ph .ph-slider .caption, .ph .ph-slider .slide.is-active .caption{animation:none}}
.ph .ph-slider .eyebrow{color:#fff;margin-bottom:18px}
.ph .ph-slider .eyebrow::before,.ph .ph-slider .eyebrow::after{background:var(--ph-orange)}
.ph .ph-slider h1{color:#fff;font-size:clamp(44px,7vw,92px);line-height:1;text-transform:uppercase;letter-spacing:.01em}
.ph .ph-slider h1 em{font-style:normal;color:var(--ph-orange)}
.ph .ph-slider p{color:rgba(255,255,255,.85);font-size:18px;margin:22px 0 30px;max-width:34rem}
.ph .ph-slider .actions{display:flex;gap:14px;flex-wrap:wrap}
.ph .ph-slider .btn-dark{background:transparent;border:2px solid rgba(255,255,255,.7)}
.ph .ph-slider .btn-dark:hover{background:#fff;color:var(--ph-ink)}
.ph .glf-button.btn{cursor:pointer;line-height:1.2}
.ph .ph-slider .arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:rgba(0,0,0,.35);color:#fff;font-size:30px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0 0 4px;transition:background .2s}
.ph .ph-slider .arrow:hover{background:var(--ph-orange);border-color:var(--ph-orange)}
.ph .ph-slider .arrow.prev{left:20px}
.ph .ph-slider .arrow.next{right:20px}
.ph .ph-slider .dots{position:absolute;left:0;right:0;bottom:22px;z-index:3;display:flex;justify-content:center;gap:10px}
.ph .ph-slider .dots button{width:10px;height:10px;border-radius:50%;border:0;background:rgba(255,255,255,.45);padding:0;cursor:pointer;transition:transform .2s,background .2s}
.ph .ph-slider .dots button.is-active{background:var(--ph-orange);transform:scale(1.35)}
@media (max-width:820px){
  .ph .ph-slider{height:clamp(480px,80vh,640px)}
  .ph .ph-slider .slide::before{background:linear-gradient(180deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,.75) 100%)}
  .ph .ph-slider .slide{align-items:flex-end;padding-bottom:70px}
  .ph .ph-slider h1{font-size:clamp(38px,11vw,60px)}
  .ph .ph-slider p{font-size:16px;margin:14px 0 22px}
  .ph .ph-slider .arrow{display:none}
}
