/* Peb's Family — scrapbook travel theme */
:root{
  --pf-cream:#FFF8EE;
  --pf-paper:#FFFDF8;
  --pf-ink:#1F2A33;
  --pf-muted:#5B6770;
  --pf-teal:#0E4D5C;
  --pf-teal-2:#15697A;
  --pf-coral:#FF6B5B;
  --pf-sun:#FFC145;
  --pf-sage:#7FB685;
  --pf-blush:#FFE3DC;
  --pf-display:'Fraunces',Georgia,serif;
  --pf-body:'Nunito',system-ui,sans-serif;
  --pf-hand:'Caveat',cursive;
  --pf-radius:22px;
  --pf-shadow:0 18px 50px rgba(14,77,92,.14);
}

/* Base */
body{background:var(--pf-cream);color:var(--pf-ink);font-family:var(--pf-body);}
body .elementor, body .elementor p{font-family:var(--pf-body);}
h1,h2,h3,h4,.elementor-heading-title{font-family:var(--pf-display);letter-spacing:-.01em;}
::selection{background:var(--pf-sun);color:var(--pf-ink);}

/* ---------- Header (theme template part) ---------- */
.hostinger-ai-menu{background:rgba(255,248,238,.92)!important;backdrop-filter:blur(10px);position:sticky;top:0;z-index:999;border-bottom:2px dashed rgba(14,77,92,.18);}
.hostinger-ai-menu .wp-block-site-title,.hostinger-ai-site-title a{font-family:var(--pf-hand)!important;font-size:2.4rem!important;color:var(--pf-teal)!important;line-height:1;text-decoration:none!important;}
.hostinger-ai-site-navigation a{font-family:var(--pf-body);font-weight:800;font-size:.98rem;color:var(--pf-ink)!important;padding:.35rem .8rem;border-radius:999px;transition:background .25s,color .25s,transform .25s;text-decoration:none!important;}
.hostinger-ai-site-navigation a:hover{background:var(--pf-sun);transform:rotate(-2deg);}
.hostinger-ai-site-navigation .current-menu-item a{background:var(--pf-teal);color:#fff!important;}
.admin-bar .hostinger-ai-menu{top:32px;}

/* ---------- Footer ---------- */
footer .has-color-2-background-color,footer.wp-block-template-part > .wp-block-group{background:var(--pf-teal)!important;}
footer h3{font-family:var(--pf-hand)!important;font-size:2rem!important;color:var(--pf-sun)!important;}

/* ---------- Hero ---------- */
.pf-hero{position:relative;overflow:hidden;}
.pf-hero .elementor-background-video-container{filter:saturate(1.1);}
.pf-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,77,92,.35) 0%,rgba(31,42,51,.15) 40%,rgba(31,42,51,.65) 100%);pointer-events:none;z-index:1;}
.pf-hero > .e-con-inner,.pf-hero > .elementor-element{position:relative;z-index:2;}
.pf-kicker{font-family:var(--pf-hand);font-size:2.1rem;color:var(--pf-sun);transform:rotate(-3deg);display:inline-block;}
.pf-hero-title .elementor-heading-title{font-size:clamp(3.4rem,9vw,7.5rem);line-height:.95;color:#fff;font-weight:800;text-shadow:0 6px 30px rgba(0,0,0,.35);}
.pf-hero-sub{color:#fff;font-size:1.25rem;max-width:36rem;text-shadow:0 2px 12px rgba(0,0,0,.4);}
.pf-scroll{font-family:var(--pf-hand);color:#fff;font-size:1.5rem;animation:pf-bob 2.2s ease-in-out infinite;}
@keyframes pf-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}

/* ---------- Buttons ---------- */
.pf-btn .elementor-button{font-family:var(--pf-body);font-weight:800;border-radius:999px;padding:1rem 2.2rem;box-shadow:0 10px 24px rgba(0,0,0,.18);transition:transform .25s,box-shadow .25s;}
.pf-btn .elementor-button:hover{transform:translateY(-3px) rotate(-1.5deg);box-shadow:0 16px 30px rgba(0,0,0,.22);}
.pf-btn-sun .elementor-button{background:var(--pf-sun);color:var(--pf-ink);}
.pf-btn-ghost .elementor-button{background:rgba(255,255,255,.14);color:#fff;border:2px solid #fff;backdrop-filter:blur(6px);}
.pf-btn-coral .elementor-button{background:var(--pf-coral);color:#fff;}
.pf-btn-teal .elementor-button{background:var(--pf-teal);color:#fff;}

/* ---------- Section helpers ---------- */
.pf-section{padding:6rem 1.5rem;}
.pf-paper{background:var(--pf-paper);}
.pf-teal-bg{background:var(--pf-teal);}
.pf-blush-bg{background:var(--pf-blush);}
.pf-eyebrow{font-family:var(--pf-hand);font-size:1.9rem;color:var(--pf-coral);line-height:1;}
.pf-title .elementor-heading-title{font-size:clamp(2.3rem,5vw,3.8rem);color:var(--pf-teal);font-weight:800;line-height:1.05;}
.pf-teal-bg .pf-title .elementor-heading-title{color:#fff;}
.pf-lead{font-size:1.15rem;line-height:1.75;color:var(--pf-muted);max-width:44rem;}
.pf-teal-bg .pf-lead{color:rgba(255,255,255,.85);}
.pf-squiggle{display:block;width:120px;height:14px;margin:.6rem 0 0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 14'%3E%3Cpath d='M2 8 Q12 0 22 8 T42 8 T62 8 T82 8 T102 8 T118 8' fill='none' stroke='%23FFC145' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat;}
.pf-center .pf-squiggle{margin-left:auto;margin-right:auto;}

/* ---------- Page banner (inner pages) ---------- */
.pf-banner{position:relative;min-height:52vh;display:flex;align-items:flex-end;padding:0 1.5rem 3.5rem;overflow:hidden;border-radius:0 0 42px 42px;}
.pf-banner::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,77,92,.15),rgba(31,42,51,.72));z-index:1;}
.pf-banner > *{position:relative;z-index:2;}
.pf-banner .elementor-heading-title{color:#fff;font-size:clamp(3rem,8vw,6rem);font-weight:800;line-height:1;}
.pf-banner .pf-kicker{font-size:1.9rem;}
.pf-banner p{color:#fff;font-size:1.15rem;max-width:40rem;}

/* ---------- Stats ---------- */
.pf-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;max-width:72rem;margin:0 auto;}
.pf-stat{background:#fff;border-radius:var(--pf-radius);padding:2rem 1.25rem;text-align:center;box-shadow:var(--pf-shadow);transition:transform .3s;}
.pf-stat:nth-child(odd){transform:rotate(-1.5deg)}.pf-stat:nth-child(even){transform:rotate(1.5deg)}
.pf-stat:hover{transform:rotate(0) scale(1.04);}
.pf-stat b{display:block;font-family:var(--pf-display);font-size:3.2rem;color:var(--pf-coral);line-height:1;}
.pf-stat span{font-weight:700;color:var(--pf-muted);}
@media(max-width:780px){.pf-stats{grid-template-columns:repeat(2,1fr);}}

/* ---------- Destination cards ---------- */
.pf-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;max-width:78rem;margin:0 auto;}
.pf-card{position:relative;display:block;border-radius:26px;overflow:hidden;aspect-ratio:3/4;box-shadow:var(--pf-shadow);text-decoration:none!important;transition:transform .35s ease,box-shadow .35s;}
.pf-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease;}
.pf-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(14,40,50,.85));}
.pf-card:hover{transform:translateY(-8px) rotate(-1deg);box-shadow:0 28px 60px rgba(14,77,92,.25);}
.pf-card:hover img{transform:scale(1.08);}
.pf-card .pf-card-txt{position:absolute;left:1.25rem;right:1.25rem;bottom:1.25rem;z-index:2;color:#fff;}
.pf-card .pf-card-txt small{font-family:var(--pf-hand);font-size:1.5rem;color:var(--pf-sun);}
.pf-card .pf-card-txt strong{display:block;font-family:var(--pf-display);font-size:1.8rem;line-height:1.1;}
.pf-card .pf-flag{position:absolute;top:1rem;right:1rem;z-index:2;background:var(--pf-sun);color:var(--pf-ink);font-weight:800;font-size:.8rem;padding:.35rem .75rem;border-radius:999px;letter-spacing:.06em;}
@media(max-width:980px){.pf-cards{grid-template-columns:repeat(2,1fr);}}
@media(max-width:520px){.pf-cards{grid-template-columns:1fr;}.pf-card{aspect-ratio:4/3;}}

/* ---------- Polaroids ---------- */
.pf-polaroids{display:flex;flex-wrap:wrap;justify-content:center;gap:1.6rem;max-width:80rem;margin:0 auto;}
.pf-polaroid{background:#fff;padding:.8rem .8rem 3rem;box-shadow:0 14px 30px rgba(0,0,0,.14);width:15rem;position:relative;transition:transform .35s ease,box-shadow .35s;}
.pf-polaroid img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;}
.pf-polaroid figcaption{position:absolute;left:0;right:0;bottom:.55rem;text-align:center;font-family:var(--pf-hand);font-size:1.45rem;color:var(--pf-ink);}
.pf-polaroid::before{content:"";position:absolute;top:-12px;left:50%;width:84px;height:24px;transform:translateX(-50%) rotate(-3deg);background:rgba(255,193,69,.75);box-shadow:0 2px 4px rgba(0,0,0,.08);}
.pf-polaroid:nth-child(4n+1){transform:rotate(-4deg)}.pf-polaroid:nth-child(4n+2){transform:rotate(3deg)}
.pf-polaroid:nth-child(4n+3){transform:rotate(-2deg)}.pf-polaroid:nth-child(4n){transform:rotate(4deg)}
.pf-polaroid:nth-child(3n)::before{background:rgba(127,182,133,.75)}.pf-polaroid:nth-child(3n+1)::before{background:rgba(255,107,91,.6)}
.pf-polaroid:hover{transform:rotate(0) scale(1.08);z-index:5;box-shadow:0 26px 50px rgba(0,0,0,.22);}
@media(max-width:520px){.pf-polaroid{width:44%;padding:.5rem .5rem 2.2rem}.pf-polaroid figcaption{font-size:1.1rem}}

/* ---------- Chapters (Adventures) ---------- */
.pf-chapter-num{font-family:var(--pf-hand);font-size:2rem;color:var(--pf-coral);}
.pf-chip-row{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem;}
.pf-chip{background:#fff;border:2px solid var(--pf-teal);color:var(--pf-teal);font-weight:800;padding:.35rem .9rem;border-radius:999px;font-size:.92rem;}
.pf-teal-bg .pf-chip{background:transparent;border-color:var(--pf-sun);color:var(--pf-sun);}

/* ---------- Jump nav ---------- */
.pf-jump{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;}
.pf-jump a{background:#fff;color:var(--pf-teal)!important;font-weight:800;padding:.7rem 1.4rem;border-radius:999px;box-shadow:0 8px 20px rgba(14,77,92,.12);text-decoration:none!important;transition:transform .25s,background .25s;}
.pf-jump a:hover{background:var(--pf-sun);transform:translateY(-3px) rotate(-2deg);}

/* ---------- Galleries (native Elementor image-gallery) ---------- */
.pf-gallery .gallery{margin:0!important;}
.pf-gallery .gallery-item{padding:.45rem!important;}
.pf-gallery .gallery-item img{border-radius:16px!important;border:0!important;aspect-ratio:1/1;object-fit:cover;width:100%;box-shadow:0 8px 20px rgba(0,0,0,.10);transition:transform .35s ease,box-shadow .35s,filter .35s;}
.pf-gallery .gallery-item a:hover img{transform:scale(1.05) rotate(-1.5deg);box-shadow:0 18px 36px rgba(0,0,0,.2);}
.pf-gallery .gallery-caption{font-family:var(--pf-hand);font-size:1.3rem;color:var(--pf-teal);}

/* ---------- Place feature rows ---------- */
.pf-place{display:grid;grid-template-columns:1.25fr 1fr;gap:2.5rem;align-items:center;max-width:72rem;margin:0 auto 5rem;}
.pf-place:nth-child(even){grid-template-columns:1fr 1.25fr;}
.pf-place:nth-child(even) .pf-place-img{order:2;}
.pf-place-img{position:relative;}
.pf-place-img img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:28px;box-shadow:var(--pf-shadow);}
.pf-place-img .pf-tag{position:absolute;top:-14px;left:1.5rem;background:var(--pf-coral);color:#fff;font-weight:800;padding:.4rem 1rem;border-radius:999px;transform:rotate(-4deg);box-shadow:0 8px 16px rgba(255,107,91,.35);}
.pf-place h3{font-size:2.3rem;color:var(--pf-teal);margin:0 0 .5rem;line-height:1.1;}
.pf-place .pf-where{font-family:var(--pf-hand);font-size:1.6rem;color:var(--pf-coral);}
.pf-place p{color:var(--pf-muted);line-height:1.75;font-size:1.08rem;}
@media(max-width:820px){.pf-place,.pf-place:nth-child(even){grid-template-columns:1fr;}.pf-place:nth-child(even) .pf-place-img{order:0;}}

/* ---------- Food menu board ---------- */
.pf-menu{max-width:60rem;margin:0 auto;background:#fff;border-radius:28px;padding:2.5rem;box-shadow:var(--pf-shadow);border:3px dashed var(--pf-sun);}
.pf-menu h3{font-family:var(--pf-hand);font-size:2.4rem;color:var(--pf-coral);text-align:center;margin:0 0 1rem;}
.pf-menu ul{list-style:none;padding:0;margin:0;columns:2;column-gap:2.5rem;}
.pf-menu li{break-inside:avoid;padding:.7rem 0;border-bottom:1px dotted rgba(14,77,92,.25);}
.pf-menu li b{font-family:var(--pf-display);color:var(--pf-teal);font-size:1.15rem;}
.pf-menu li span{display:block;color:var(--pf-muted);font-size:.95rem;}
@media(max-width:640px){.pf-menu ul{columns:1}}

/* ---------- Passport ---------- */
.pf-passport{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;max-width:64rem;margin:0 auto;}
.pf-stamp{position:relative;background:var(--pf-paper);border-radius:22px;padding:2rem 1.75rem 1.75rem;box-shadow:var(--pf-shadow);overflow:hidden;}
.pf-stamp .pf-ink{position:absolute;top:1.1rem;right:1.1rem;width:112px;height:112px;border-radius:50%;border:4px double currentColor;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-family:var(--pf-display);font-weight:800;font-size:.95rem;line-height:1.1;transform:rotate(-14deg);opacity:.85;letter-spacing:.05em;}
.pf-stamp .pf-ink small{font-family:var(--pf-body);font-size:.7rem;font-weight:800;}
.pf-stamp.jp .pf-ink{color:#D7263D}.pf-stamp.kr .pf-ink{color:#1F5FAD}.pf-stamp.cn .pf-ink{color:#C0392B}.pf-stamp.home .pf-ink{color:var(--pf-sage)}
.pf-stamp h3{font-size:2rem;color:var(--pf-teal);margin:0 0 .3rem;max-width:calc(100% - 120px);}
.pf-stamp .pf-hand{font-family:var(--pf-hand);font-size:1.5rem;color:var(--pf-coral);}
.pf-stamp ul{padding-left:1.1rem;color:var(--pf-muted);line-height:1.8;margin:1rem 0 1.25rem;}
.pf-stamp .pf-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;}
.pf-stamp .pf-thumbs img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;}
.pf-stamp a.pf-more{display:inline-block;margin-top:1rem;font-weight:800;color:var(--pf-teal)!important;}
@media(max-width:760px){.pf-passport{grid-template-columns:1fr}}

/* ---------- Quote band ---------- */
.pf-quote{font-family:var(--pf-display);font-style:italic;font-size:clamp(1.8rem,4vw,2.9rem);color:#fff;text-align:center;max-width:52rem;margin:0 auto;line-height:1.25;}
.pf-quote small{display:block;margin-top:1rem;font-family:var(--pf-hand);font-style:normal;font-size:1.7rem;color:var(--pf-sun);}

/* ---------- Album filters ---------- */
.pf-album-head{position:sticky;top:78px;z-index:50;background:rgba(255,248,238,.95);backdrop-filter:blur(8px);padding:1rem 0;}

/* Hide theme page title on Elementor full-width pages */
.page .wp-block-post-title{display:none;}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important;}}

/* Let Elementor pages run full width inside the block theme */
.wp-block-post-content:has(> .elementor){padding-left:0!important;padding-right:0!important;}
.wp-block-post-content > .elementor{max-width:none!important;width:100%!important;margin-left:0!important;margin-right:0!important;}
main#wp--skip-link--target:has(.elementor){margin-top:0!important;padding-top:0!important;}
.wp-block-post-content:has(> .elementor) + *, main#wp--skip-link--target > .wp-block-post-title{display:none;}
.pf-hero{margin-top:0!important;}

/* Keep the menu on one line */
.hostinger-ai-menu-wrapper{grid-template-columns:auto 1fr!important;column-gap:1.5rem!important;}
.hostinger-ai-site-navigation-wrapper{min-width:0;}
@media(min-width:600px){.hostinger-ai-site-navigation .wp-block-navigation__container{flex-wrap:nowrap!important;gap:.15rem!important;}}
.hostinger-ai-site-navigation a{white-space:nowrap;padding:.35rem .65rem;font-size:.95rem;}
@media(max-width:1100px) and (min-width:600px){.hostinger-ai-site-navigation a{padding:.3rem .45rem;font-size:.88rem;}}

/* ---------- Party page ---------- */
.pf-confetti{position:relative;height:0;overflow:visible;pointer-events:none;}
.pf-confetti i{position:absolute;top:-40px;width:10px;height:16px;border-radius:3px;opacity:.9;animation:pf-fall 6s linear infinite;}
.pf-confetti i:nth-child(5n+1){background:var(--pf-sun)}.pf-confetti i:nth-child(5n+2){background:var(--pf-coral)}.pf-confetti i:nth-child(5n+3){background:var(--pf-sage)}.pf-confetti i:nth-child(5n+4){background:#6C8CFF}.pf-confetti i:nth-child(5n){background:var(--pf-teal)}
@keyframes pf-fall{0%{transform:translateY(0) rotate(0)}100%{transform:translateY(520px) rotate(540deg);opacity:0}}
.pf-party-stats .pf-stat b{color:var(--pf-teal);}
.pf-cake{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:1.25rem;max-width:64rem;margin:0 auto;align-items:end;}
.pf-cake a{display:block;border-radius:24px;overflow:hidden;box-shadow:var(--pf-shadow);transition:transform .35s;}
.pf-cake a:nth-child(1){transform:rotate(-2deg)}.pf-cake a:nth-child(3){transform:rotate(2deg)}
.pf-cake a:hover{transform:scale(1.04) rotate(0)}
.pf-cake img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;}
@media(max-width:700px){.pf-cake{grid-template-columns:1fr 1fr}.pf-cake a:first-child{grid-column:1/-1}}
.pf-disco{background:radial-gradient(circle at 20% 20%,#3B2A8C 0%,#1B1540 55%,#0D0A24 100%)!important;}
.pf-disco .pf-title .elementor-heading-title{color:#fff;text-shadow:0 0 18px rgba(108,140,255,.8);}
.pf-disco .pf-eyebrow{color:var(--pf-sun);}
.pf-disco .pf-lead{color:rgba(255,255,255,.8);}
.pf-disco .gallery-item img{box-shadow:0 0 22px rgba(147,112,255,.45)!important;}
.pf-bingo{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;max-width:44rem;margin:1.5rem auto 0;}
.pf-bingo span{background:#fff;border:3px dashed var(--pf-coral);border-radius:16px;padding:1rem .6rem;text-align:center;font-weight:800;color:var(--pf-teal);font-size:.95rem;transition:transform .25s,background .25s;cursor:default;}
.pf-bingo span:hover{background:var(--pf-sun);transform:rotate(-3deg) scale(1.05);}
@media(max-width:600px){.pf-bingo{grid-template-columns:repeat(2,1fr)}}
/* 9 menu items: tighter */
@media(min-width:600px){.hostinger-ai-site-navigation a{padding:.32rem .5rem;font-size:.9rem;}}

/* Full-photo hero (no cropping) */
.pf-fullhero-head{text-align:center;}
.pf-fullhero-head .pf-kicker{font-size:2.2rem;color:var(--pf-coral);}
.pf-fullhero-head .elementor-heading-title{font-size:clamp(3rem,8vw,6rem);color:var(--pf-teal);font-weight:800;line-height:1;}
.pf-fullhero-photo{max-width:1100px;margin:0 auto;background:#fff;padding:14px 14px 56px;box-shadow:0 24px 60px rgba(14,77,92,.18);transform:rotate(-1deg);position:relative;}
.pf-fullhero-photo img{display:block;width:100%;height:auto;}
.pf-fullhero-photo figcaption{position:absolute;left:0;right:0;bottom:12px;text-align:center;font-family:var(--pf-hand);font-size:1.9rem;color:var(--pf-ink);}
.pf-fullhero-photo::before{content:'';position:absolute;top:-14px;left:50%;width:130px;height:30px;transform:translateX(-50%) rotate(-3deg);background:rgba(255,193,69,.8);}
@media(max-width:600px){.pf-fullhero-photo{padding:8px 8px 40px}.pf-fullhero-photo figcaption{font-size:1.4rem;bottom:8px}}
