/*
Theme Name: Cafe Piona
Author: Cafe Piona
Description: A cheerful pastel cafe theme with flowers, playful typography, an editable cafe homepage, seasonal menus, and blog support.
Version: 1.1.0
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: cafe-piona
Tags: custom-logo, custom-menu, featured-images, translation-ready, blog, food-and-drink
*/
:root {
  --font-body: "DM Sans", sans-serif;
  --font-display: "Shrikhand", Georgia, serif;
  --font-logo: "Modak", Georgia, serif;
  --pink: oklch(0.86 0.075 12);
  --mint: oklch(0.89 0.057 153);
  --mint-light: oklch(0.952 0.025 145);
  --yellow: oklch(0.92 0.115 98);
  --rose: oklch(0.68 0.15 12);
  --radius: 0.625rem;
  --background: oklch(0.986 0.006 100);
  --foreground: oklch(0.31 0.045 163);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.129 0.042 264.695);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.129 0.042 264.695);
  --primary: oklch(0.34 0.055 163);
  --primary-foreground: oklch(0.986 0.006 100);
  --secondary: oklch(0.968 0.007 247.896);
  --secondary-foreground: oklch(0.208 0.042 265.755);
  --muted: oklch(0.968 0.007 247.896);
  --muted-foreground: oklch(0.48 0.025 163);
  --accent: oklch(0.968 0.007 247.896);
  --accent-foreground: oklch(0.208 0.042 265.755);
  --destructive: oklch(0.577 0.245 27.325);
  --destructive-foreground: oklch(0.984 0.003 247.858);
  --border: oklch(0.84 0.025 135);
  --input: oklch(0.929 0.013 255.508);
  --ring: oklch(0.704 0.04 256.788);
  --chart-1: oklch(0.646 0.222 41.116);
  --chart-2: oklch(0.6 0.118 184.704);
  --chart-3: oklch(0.398 0.07 227.392);
  --chart-4: oklch(0.828 0.189 84.429);
  --chart-5: oklch(0.769 0.188 70.08);
  --sidebar: oklch(0.984 0.003 247.858);
  --sidebar-foreground: oklch(0.129 0.042 264.695);
  --sidebar-primary: oklch(0.208 0.042 265.755);
  --sidebar-primary-foreground: oklch(0.984 0.003 247.858);
  --sidebar-accent: oklch(0.968 0.007 247.896);
  --sidebar-accent-foreground: oklch(0.208 0.042 265.755);
  --sidebar-border: oklch(0.929 0.013 255.508);
  --sidebar-ring: oklch(0.704 0.04 256.788);
}
body{margin:0;}
.piona-site {font-family:var(--font-body); color:var(--foreground); background:var(--background); font-size:15px; line-height:1.6;}
.piona-site * {box-sizing:border-box;}
.piona-site a {color:inherit; text-decoration:none;}
.piona-site img {display:block; max-width:100%;}
.piona-site h1,.piona-site h2,.piona-site h3,.piona-site p {margin:0;}
.piona-site button {font:inherit;}
.piona-site .display {font-family:var(--font-display);font-weight:400;line-height:1.08;letter-spacing:0;}
.piona-header {height:100px;display:flex;align-items:center;justify-content:space-between;max-width:1440px;margin:auto;padding:0 6%;gap:30px;}
.piona-logo {font-family:var(--font-display);font-size:37px;line-height:1;white-space:nowrap;}
.piona-logo span {font-family:var(--font-body);font-size:10px;display:block;text-align:center;letter-spacing:3px;margin-top:7px;text-transform:uppercase;}
.piona-nav {display:flex;gap:35px;align-items:center;font-size:14px;font-weight:500;}
.piona-nav a:hover,.piona-footer a:hover {text-decoration:underline;text-underline-offset:6px;}
.cafe-button {display:inline-flex;align-items:center;justify-content:center;gap:13px;background:var(--primary);color:var(--primary-foreground)!important;border:1px solid var(--primary);border-radius:100px!important;padding:13px 25px!important;height:auto!important;font-size:13px!important;font-weight:500;line-height:1.6;cursor:pointer;transition:background .2s,transform .2s;}
.cafe-button:hover {background:var(--foreground);transform:translateY(-2px);}
.cafe-button svg {width:16px;height:16px;}
.piona-site a:focus-visible,.piona-site button:focus-visible {outline:3px solid var(--ring);outline-offset:4px;}
.mobile-menu {display:none;}
.piona-hero {position:relative;isolation:isolate;min-height:620px;display:flex;align-items:center;overflow:hidden;background:var(--pink);}
.piona-hero-image {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;object-position:center;}
.hero-content {width:100%;max-width:1440px;margin:auto;padding:50px 6% 65px;}
.hero-eyebrow {font-size:11px;letter-spacing:2px;display:flex;gap:10px;align-items:center;font-weight:600;}
.hero-content h1 {font-family:var(--font-logo);font-weight:400;font-size:120px;line-height:.95;margin:25px 0 22px;max-width:650px;letter-spacing:0;}
.hero-content h1 span {display:block;}
.hero-content p {max-width:345px;font-size:16px;line-height:1.7;margin-bottom:29px;}
.hero-sticker {position:absolute;right:5%;bottom:43px;width:122px;height:122px;border-radius:50%;background:var(--yellow);display:flex;align-items:center;justify-content:center;text-align:center;transform:rotate(12deg);font-family:var(--font-display);font-size:19px;line-height:1.3;border:1px dashed var(--primary);outline:7px solid var(--yellow);}
.flower {width:33px;height:33px;display:inline-block;flex-shrink:0;}
.piona-ribbon {background:var(--mint);height:68px;display:flex;align-items:center;justify-content:center;gap:45px;overflow:hidden;white-space:nowrap;font-size:12px;font-weight:600;letter-spacing:1.7px;}
.piona-ribbon .flower {width:30px;height:30px;color:var(--primary);}
.piona-section {padding:85px 6%;max-width:1440px;margin:0 auto;scroll-margin-top:30px;}
.section-heading {display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:38px;}
.eyebrow {font-size:10px;letter-spacing:2px;font-weight:600;text-transform:uppercase;margin-bottom:15px!important;}
.piona-site h2 {font-size:47px;}
.section-heading>p {max-width:300px;font-size:14px;}
.menu-tabs {display:flex;gap:10px;margin-bottom:32px;}
.menu-tab {padding:9px 20px!important;border:1px solid var(--border);border-radius:100px!important;background:transparent;cursor:pointer;color:var(--foreground);height:auto!important;}
.menu-tab[aria-selected=true] {background:var(--primary);border-color:var(--primary);color:var(--primary-foreground);}
.menu-list {display:grid;grid-template-columns:repeat(3,1fr);gap:0 45px;}
.menu-item {padding:22px 0;border-top:1px solid var(--border);}
.menu-item h3 {font-size:17px;font-weight:500;margin-bottom:5px;}
.menu-item p {font-size:13px;color:var(--muted-foreground);}
.menu-note {font-size:11px;color:var(--muted-foreground);margin-top:25px!important;}
.story-band {background:var(--mint-light);}
.story-section {display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;}
.story-image {width:100%;height:auto;aspect-ratio:1.15;object-fit:cover;border-radius:120px 120px 5px 5px;}
.story-copy .flower {width:60px;height:60px;color:var(--rose);margin-bottom:24px;}
.story-copy h2 {margin-bottom:25px;max-width:460px;}
.story-copy p {max-width:425px;margin-bottom:18px;}
.story-signature {font-family:var(--font-display);font-size:25px;margin-top:24px;}
.visit-section {text-align:center;position:relative;}
.visit-section>.flower {width:53px;height:53px;color:var(--rose);margin-bottom:20px;}
.visit-section h2 {margin-bottom:22px;}
.visit-section>p {max-width:470px;margin:0 auto 30px;}
.visit-details {display:flex;justify-content:center;gap:70px;margin:35px 0;}
.visit-details h3 {font-size:12px;text-transform:uppercase;letter-spacing:1px;margin-bottom:7px;}
.piona-footer {background:var(--primary);color:var(--primary-foreground);padding:37px 6%;display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:12px;}
.piona-footer .piona-logo {font-size:30px;}
.piona-footer-links {display:flex;gap:24px;align-items:center;}
.download-link {display:inline-flex;gap:8px;align-items:center;}
.wp-content {max-width:850px;margin:auto;padding:60px 24px;}
.wp-content h1 {font-family:var(--font-display);font-size:50px;margin-bottom:30px;}
.wp-content article {margin-bottom:50px;}
.wp-content a {text-decoration:underline;}
.wp-content img {height:auto;}
.skip-link {position:fixed;top:-100px;left:16px;padding:12px;z-index:100;background:var(--background);}
.skip-link:focus {top:10px;}
@media(min-width:1600px) {.piona-hero{min-height:680px;}.hero-content{padding-left:4%;}}
@media(max-width:900px) {.piona-header{height:85px;}.piona-nav{gap:20px;}.piona-hero{min-height:580px;}.hero-content h1{font-size:100px;}.hero-content p{max-width:280px;}.piona-hero-image{object-position:58% center;}.story-section{gap:40px;}.piona-ribbon{gap:24px;}.menu-list{gap:0 25px;}}
@media(max-width:600px) {.piona-header{padding:0 6%;height:80px;}.piona-logo{font-size:30px;}.piona-header>.cafe-button{display:none;}.mobile-menu{display:inline-flex;}.piona-nav{display:none;}.piona-nav.is-open{display:flex;position:absolute;top:80px;left:0;right:0;background:var(--background);padding:25px;z-index:10;justify-content:center;flex-wrap:wrap;border-bottom:1px solid var(--border);}.piona-hero{min-height:600px;align-items:flex-start;}.piona-hero-image{object-fit:cover;object-position:66% center;}.hero-content{padding-top:36px;margin:0 auto;}.hero-content h1{font-size:80px;margin:20px 0;}.hero-content p{font-size:14px;max-width:235px;}.hero-sticker{width:96px;height:96px;right:8%;bottom:25px;font-size:16px;}.hero-eyebrow{font-size:9px;letter-spacing:1px;}.hero-eyebrow .flower{width:24px;height:24px;}.piona-ribbon{height:57px;gap:22px;justify-content:flex-start;padding:0 20px;font-size:10px;}.piona-ribbon .flower{width:23px;height:23px;}.piona-section{padding:55px 6%;}.piona-site h2{font-size:36px;}.section-heading{align-items:flex-start;flex-direction:column;gap:18px;}.menu-list{grid-template-columns:1fr;}.menu-tabs{gap:8px;}.menu-tab{font-size:12px;padding:8px 15px!important;}.story-section{grid-template-columns:1fr;gap:35px;}.story-image{aspect-ratio:1.2;}.story-copy .flower{width:45px;height:45px;}.piona-footer{flex-direction:column;text-align:center;}.piona-footer-links{flex-wrap:wrap;justify-content:center;gap:18px;}.visit-details{flex-direction:column;gap:25px;}}
@media(prefers-reduced-motion:reduce){.cafe-button{transition:none;}.cafe-button:hover{transform:none;}}

[hidden]{display:none!important;}.custom-nav{display:flex;gap:30px;list-style:none;margin:0;padding:0;}.custom-nav .sub-menu{list-style:none;padding:12px;background:var(--background);}.custom-logo{max-width:170px;max-height:65px;width:auto;height:auto;}.menu-item-title{display:flex;justify-content:space-between;gap:12px;}.mobile-menu{background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--foreground);padding:8px 12px;cursor:pointer;}.wp-content input,.wp-content textarea{max-width:100%;padding:10px;border:1px solid var(--border);font:inherit;}.wp-content .submit{background:var(--primary);color:var(--primary-foreground);padding:12px 24px;border-radius:6px;cursor:pointer;}.alignwide{max-width:1100px;}.alignfull{width:100%;}.wp-caption{max-width:100%;}.wp-caption-text,.gallery-caption{font-size:13px;}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);}.sticky{border-top:3px solid var(--primary);}.bypostauthor{font-weight:500;}@media(max-width:600px){.custom-nav{flex-wrap:wrap;gap:20px;}}
