/*
Theme Name: LOMI Travel
Theme URI: https://lomi.local
Author: LOMI
Description: A warm, lightweight travel recommendation theme for curated activities, flights, and car rentals.
Version: 1.17.15
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: lomi-travel
*/

:root{--ink:#24322c;--muted:#66716c;--cream:#f6f1e8;--paper:#fffdf9;--sage:#718477;--terracotta:#bd7158;--line:#ded8ce;--radius:22px;--shadow:0 18px 50px rgba(35,50,44,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,253,249,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(222,216,206,.7)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{font:700 22px/1 Georgia,serif;letter-spacing:.22em}.menu{display:flex;align-items:center;gap:28px}.menu a{font-size:14px}.menu .button{color:#fff}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;background:var(--ink);color:#fff;font-weight:650;border:0;cursor:pointer}.button.alt{background:var(--terracotta)}.button.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.hero{padding:64px 0;background:linear-gradient(145deg,var(--cream),#eef1eb)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center}.hero-photo{min-height:570px;border-radius:34px;background-size:cover;background-position:center;box-shadow:var(--shadow);position:relative;overflow:hidden}.hero-photo:after{content:"LOMI · SEATTLE";position:absolute;right:18px;bottom:18px;padding:9px 13px;border-radius:999px;background:rgba(255,253,249,.88);backdrop-filter:blur(8px);font-size:10px;font-weight:750;letter-spacing:.13em}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:750;color:var(--terracotta)}h1,h2,h3{font-family:Georgia,serif;line-height:1.08;margin:0}h1{font-size:clamp(48px,7vw,84px);max-width:850px;font-weight:500;letter-spacing:-.035em}.hero p{max-width:620px;font-size:19px;color:var(--muted);margin:24px 0 30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.trust{display:flex;gap:28px;margin-top:54px;color:var(--muted);font-size:13px}.trust span:before{content:"✓";margin-right:8px;color:var(--sage);font-weight:800}
.section{padding:88px 0}.section.soft{background:var(--cream)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.section-head h2{font-size:clamp(34px,5vw,54px);font-weight:500}.section-head p{max-width:470px;color:var(--muted);margin:0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:.2s transform,.2s box-shadow}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card-image{aspect-ratio:4/3;background:linear-gradient(135deg,#b9c3ba,#e7d7c7);overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover}.card-body{padding:22px}.tag{display:inline-block;margin-bottom:10px;color:var(--terracotta);font-size:11px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.card h3{font-size:25px;font-weight:500}.card p{color:var(--muted);font-size:14px;margin:12px 0 18px}.card-link{font-size:14px;font-weight:750;border-bottom:1px solid var(--ink)}
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{padding:30px;border-radius:var(--radius);background:#fff;border:1px solid var(--line)}.service .icon{font-size:26px}.service h3{margin:22px 0 10px;font-size:26px;font-weight:500}.service p{color:var(--muted);margin:0 0 20px}.personal{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.personal-box{background:var(--ink);color:#fff;border-radius:32px;padding:48px}.personal-box h2{font-size:48px;font-weight:500}.personal-box p{color:#d8dedb}.steps{display:grid;gap:24px}.step{display:grid;grid-template-columns:40px 1fr;gap:16px}.step b{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--cream);font-family:Georgia,serif}.step h3{font-size:22px;font-weight:500}.step p{margin:5px 0;color:var(--muted)}
.story{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}.story-collage{display:grid;grid-template-columns:1fr 1fr;gap:12px}.story-collage img{width:100%;height:220px;object-fit:cover;border-radius:20px}.story-collage img:first-child{grid-column:span 2;height:320px}.story-copy h2{font-size:clamp(36px,5vw,56px);font-weight:500}.story-copy p{color:var(--muted);font-size:18px}.guest-intro{max-width:720px;font-size:18px;color:var(--muted)}.guest-empty{padding:34px;border-radius:var(--radius);background:var(--cream);color:var(--muted)}
.guest-welcome{padding:92px 0 66px;text-align:center;background:linear-gradient(145deg,var(--cream),#eef1eb)}.guest-welcome .eyebrow{margin-bottom:14px}.guest-welcome h1{max-width:1000px;margin:auto;font-size:clamp(50px,7vw,82px);font-weight:500}.guest-welcome .guest-intro{margin:24px auto 0;font-size:20px}.guest-dates{display:inline-block;margin-top:20px;padding:8px 15px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:13px}.guest-picks-heading{text-align:center;margin-bottom:38px}.guest-picks-heading h2{font-size:clamp(34px,5vw,52px);font-weight:500}
.guest-template-note{max-width:720px;margin:24px auto 0!important;font-size:20px}.guest-template-dates{display:table;margin:20px auto 0!important;padding:8px 15px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:13px}.guest-template-dates:empty{display:none}.guest-template-activities{padding:88px 0}.guest-template-heading{text-align:center;margin-bottom:38px}.guest-template-heading h2{font-size:clamp(34px,5vw,52px);font-weight:500}
.guest-category{padding:76px 0}.guest-category:nth-of-type(odd){background:var(--cream)}.guest-category-heading{margin-bottom:30px}.guest-category-heading h2{font-size:clamp(36px,5vw,54px);font-weight:500}.guest-category-heading p{max-width:620px;color:var(--muted)}.guest-car-rental{margin:70px auto 90px;padding:52px;border-radius:30px;background:var(--ink);color:#fff}.guest-car-rental h2{color:#fff;font-size:clamp(36px,5vw,52px);font-weight:500}.guest-car-rental p{color:#d8dedb;max-width:660px}.guest-car-rental .wp-block-button__link{background:var(--terracotta)}
.lomi-block-hero{padding:64px 0;background:linear-gradient(145deg,var(--cream),#eef1eb)}.lomi-block-hero-columns{align-items:center}.lomi-block-hero h1{font-size:clamp(48px,7vw,84px);font-weight:500;letter-spacing:-.035em}.lomi-block-hero .has-medium-font-size{color:var(--muted);font-size:19px!important}.lomi-home-hero-image img{width:100%;min-height:570px;object-fit:cover;border-radius:34px;box-shadow:var(--shadow)}.lomi-block-section{padding:88px 0}.lomi-block-section.soft{background:var(--cream)}.lomi-block-section h2{font-size:clamp(34px,5vw,54px);font-weight:500}.lomi-block-activity-grid .wp-block-post-template{gap:22px}.lomi-block-activity-grid .card{height:100%}.lomi-block-services{gap:18px}.lomi-block-story{gap:56px}.lomi-block-story .story-collage>.wp-block-image img{width:100%;height:320px;object-fit:cover;border-radius:20px}.lomi-block-story .story-collage .wp-block-columns{gap:12px}.lomi-block-story .story-collage .wp-block-columns img{width:100%;height:220px;object-fit:cover;border-radius:20px}.lomi-block-cta{gap:70px}.wp-block-button__link{background:var(--ink);border-radius:999px;padding:12px 22px}.personal-box .wp-block-heading{color:#fff}
.disclosure{padding:26px 0;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.site-footer{padding:48px 0;background:var(--ink);color:#fff}.footer-row{display:flex;justify-content:space-between;gap:30px}.site-footer p{color:#cbd2ce;font-size:13px}.wp-content{padding:70px 0;min-height:60vh}.wp-content h1{font-size:54px}.wp-content a{text-decoration:underline}.activity-hero{padding:68px 0 40px;background:var(--cream)}.filter-note{padding:18px;border-left:3px solid var(--terracotta);background:#fff;margin:25px 0;color:var(--muted)}
@media(max-width:800px){.menu a:not(.button){display:none}.hero{padding:48px 0}.hero-grid,.grid,.services,.personal,.story{grid-template-columns:1fr}.hero-photo{min-height:390px;order:-1}.personal{gap:30px}.section,.lomi-block-section{padding:64px 0}.section-head,.footer-row{align-items:start;flex-direction:column}.trust{gap:12px;flex-direction:column}.personal-box{padding:32px}.personal-box h2{font-size:38px}.story-collage img,.story-collage img:first-child{height:210px}.lomi-block-hero .wp-block-columns{display:flex;flex-direction:column-reverse}.lomi-home-hero-image img{min-height:390px}.lomi-block-activity-grid .wp-block-post-template{grid-template-columns:1fr}.lomi-block-services,.lomi-block-story,.lomi-block-cta{display:block}}

/* v1.7 boutique editorial refinement */
:root{--ink:#1f302a;--muted:#68736d;--cream:#f4eee5;--paper:#fcfaf6;--sage:#7f9387;--sage-soft:#e8eee9;--terracotta:#c4775c;--gold:#b49a69;--blush:#efe2da;--line:#ddd5ca;--radius:26px;--shadow:0 22px 65px rgba(29,47,40,.11)}
body{background:var(--paper);font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.72;letter-spacing:-.01em}.site-header{background:rgba(252,250,246,.9);backdrop-filter:blur(18px);border-color:rgba(221,213,202,.75)}.nav{height:80px}.brand{font-family:"Fraunces",Georgia,serif;font-size:23px;font-weight:600;letter-spacing:.24em}h1,h2,h3,.card h3{font-family:"Fraunces",Georgia,serif;letter-spacing:-.035em}.eyebrow{color:var(--terracotta);font-size:11px;font-weight:700;letter-spacing:.2em}.button,.wp-block-button__link{min-height:50px;padding:13px 24px;font-family:"Manrope",sans-serif;font-size:13px;font-weight:700;letter-spacing:.02em;box-shadow:0 8px 22px rgba(31,48,42,.12);transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.button:hover,.wp-block-button__link:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(31,48,42,.17)}
.guest-welcome{position:relative;overflow:hidden;padding:112px 0 88px;background:radial-gradient(circle at 16% 16%,rgba(196,119,92,.15),transparent 30%),radial-gradient(circle at 84% 74%,rgba(127,147,135,.18),transparent 34%),linear-gradient(145deg,#f8f1e9,#edf1ec)}.guest-welcome:before,.guest-welcome:after{content:"";position:absolute;border:1px solid rgba(180,154,105,.25);border-radius:50%;pointer-events:none}.guest-welcome:before{width:300px;height:300px;left:-170px;bottom:-190px}.guest-welcome:after{width:420px;height:420px;right:-260px;top:-250px}.guest-welcome>*{position:relative;z-index:1}.guest-welcome h1{font-family:"Fraunces",Georgia,serif;font-size:clamp(58px,8vw,96px);font-weight:500;line-height:.98;letter-spacing:-.055em}.guest-template-note{color:#586660;font-size:19px!important;line-height:1.75}.guest-template-dates{background:rgba(252,250,246,.75);border-color:rgba(180,154,105,.55);color:#586660;letter-spacing:.05em;box-shadow:0 8px 24px rgba(31,48,42,.06)}
.guest-category{padding:94px 0}.guest-category:nth-of-type(odd){background:var(--sage-soft)}.guest-category-heading{position:relative;margin-bottom:40px;padding-left:22px;border-left:2px solid var(--gold)}.guest-category-heading h2{font-family:"Fraunces",Georgia,serif;font-size:clamp(44px,6vw,66px);font-weight:500;letter-spacing:-.045em}.guest-category-heading p{font-size:16px;line-height:1.75}.grid{gap:26px}.card{border:0;border-radius:28px;background:#fff;box-shadow:0 12px 40px rgba(31,48,42,.08);transition:transform .28s ease,box-shadow .28s ease}.card:hover{transform:translateY(-7px);box-shadow:0 24px 60px rgba(31,48,42,.14)}.card-image{aspect-ratio:4/3;background:linear-gradient(135deg,var(--sage-soft),var(--blush))}.card-image img{transition:transform .5s ease}.card:hover .card-image img{transform:scale(1.035)}.card-body{padding:26px 27px 29px}.card h3{font-size:28px;line-height:1.14}.card p{font-size:14px;line-height:1.72}.tag{color:var(--terracotta);font-size:10px;letter-spacing:.16em}.card-link{display:inline-block;padding-bottom:3px;border-color:var(--gold);font-size:13px;font-weight:700}
.guest-car-rental{position:relative;overflow:hidden;margin:90px auto 110px;padding:68px;border:1px solid rgba(255,255,255,.2);border-radius:34px;background:linear-gradient(90deg,rgba(24,43,36,.94),rgba(24,43,36,.76)),url("assets/images/lomi-patio.jpg") center/cover;color:#fff;box-shadow:0 28px 80px rgba(31,48,42,.2)}.guest-car-rental h2{font-family:"Fraunces",Georgia,serif;font-size:clamp(44px,6vw,66px);letter-spacing:-.045em}.guest-car-rental p{font-size:17px;line-height:1.75}.guest-car-rental .wp-block-button__link{background:var(--terracotta);color:#fff}.site-footer{background:#182821}.disclosure{background:#f7f2eb}
@media(max-width:800px){.guest-welcome{padding:82px 0 68px}.guest-welcome h1{font-size:52px}.guest-category{padding:68px 0}.guest-category-heading{padding-left:16px}.guest-car-rental{margin:55px 20px 75px;padding:38px 28px}.card-body{padding:23px}}

/* v1.8 personalized arrival guide */
.guest-checkin{padding:96px 0;background:var(--paper)}.guest-checkin h2,.welcome-manual h2{font-size:clamp(44px,6vw,66px);font-weight:500}.checkin-summary{display:grid;grid-template-columns:1.35fr .65fr;gap:18px;margin:36px 0 24px}.checkin-summary>p{margin:0;padding:26px 28px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 10px 32px rgba(31,48,42,.06)}.checkin-code{background:var(--ink)!important;color:#fff;font-size:21px;letter-spacing:.02em}.checkin-code strong{color:#dfe8e2;font-family:"Manrope",sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase}.checkin-question{margin:0 0 55px!important;padding:20px 24px;border-radius:18px;background:var(--blush);color:#5c443b}.guest-checkin>div>h3{margin:0 0 28px;font-size:30px}.checkin-step{position:relative;margin:0 0 36px;padding:30px;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:0 14px 45px rgba(31,48,42,.07)}.checkin-step .step-number{display:grid;place-items:center;width:46px;height:46px;margin:0 0 16px;border-radius:50%;background:var(--sage-soft);color:var(--ink);font-size:12px;font-weight:700;letter-spacing:.08em}.checkin-step>p:not(.step-number){max-width:760px;font-size:17px}.checkin-image{margin-top:22px!important;margin-bottom:0!important;overflow:hidden;border-radius:20px}.checkin-image img{width:100%;max-height:620px;object-fit:cover}.keypad-steps{margin-top:48px;padding:40px 44px;border-radius:28px;background:var(--cream)}.keypad-steps h3{font-size:32px}.keypad-steps ol{padding-left:26px}.keypad-steps li{padding:8px 0 8px 9px}.autolock-note{margin:25px 0 0!important;padding:18px 20px;border-left:3px solid var(--terracotta);background:#fff}.welcome-manual{padding:86px 0;background:var(--sage-soft)}.welcome-manual-card{padding:52px 58px;border-radius:30px;background:#fff;box-shadow:0 18px 55px rgba(31,48,42,.08)}.welcome-manual-card p{max-width:620px;color:var(--muted);font-size:17px}.welcome-manual-card .wp-block-button__link{background:var(--terracotta)}
.checkin-image img[alt="The home viewed from the street"]{width:min(100%,800px);margin-inline:auto}.checkin-image img[alt="Reserved parking and walking route marked in blue"]{width:min(100%,850px);margin-inline:auto}.checkin-image img[alt="White guest-suite door with keypad"]{width:min(100%,600px);margin-inline:auto}
@media(max-width:800px){.guest-checkin{padding:68px 0}.checkin-summary{grid-template-columns:1fr}.checkin-step{padding:21px}.keypad-steps{padding:28px 24px}.welcome-manual{padding:58px 0}.welcome-manual-card{width:calc(100% - 40px);padding:36px 27px}.checkin-image img{max-height:420px}}
.checkin-image{max-width:850px;margin-right:auto!important;margin-left:auto!important}

/* v1.14 French garden palette */
:root{--ink:#403730;--muted:#786f66;--cream:#f3ead5;--paper:#fffaf1;--sage:#87947a;--sage-soft:#e9eddf;--terracotta:#b76f78;--gold:#b99a60;--blush:#f3e2df;--burgundy:#7b4050;--line:#ded2be;--radius:20px;--shadow:0 20px 55px rgba(78,65,51,.11)}
body{background:var(--paper);color:var(--ink);font-family:"Manrope",sans-serif}.site-header{background:rgba(255,250,241,.93);border-bottom:1px solid rgba(185,154,96,.25)}.brand,h1,h2,h3,.card h3{font-family:"Cormorant Garamond",Georgia,serif}.brand{color:var(--burgundy);font-size:25px;font-weight:600;letter-spacing:.28em}.eyebrow{color:var(--burgundy);font-size:10px;letter-spacing:.24em}.button,.wp-block-button__link{background:var(--burgundy);border-radius:4px;box-shadow:0 8px 22px rgba(123,64,80,.16)}.button:hover,.wp-block-button__link:hover{background:#693543}.menu .button{color:#fff}
.lomi-block-hero,.hero{background:radial-gradient(circle at 8% 15%,rgba(183,111,120,.10),transparent 27%),radial-gradient(circle at 90% 82%,rgba(135,148,122,.18),transparent 30%),linear-gradient(135deg,#fff9ed,#eee8d4)}.lomi-block-hero h1,.hero h1{color:#3c342e;font-weight:500;line-height:.91}.lomi-home-hero-image img,.hero-photo{border-radius:140px 140px 22px 22px;border:1px solid rgba(185,154,96,.35);box-shadow:0 28px 70px rgba(69,59,48,.14)}
.guest-welcome{background:radial-gradient(circle at 15% 20%,rgba(183,111,120,.13),transparent 28%),radial-gradient(circle at 86% 78%,rgba(135,148,122,.18),transparent 33%),linear-gradient(145deg,#fff8e9,#ebe8d5)}.guest-welcome h1{color:#403730;font-family:"Cormorant Garamond",Georgia,serif;font-weight:500}.guest-template-note{color:#6f675f}.guest-template-dates{background:rgba(255,250,241,.82);border-color:rgba(185,154,96,.6)}
.guest-category:nth-of-type(odd){background:var(--sage-soft)}.guest-category-heading{border-left:1px solid var(--gold)}.guest-category-heading h2{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500}.card{border:1px solid rgba(185,154,96,.24);border-radius:18px;box-shadow:0 14px 40px rgba(78,65,51,.08)}.card-image{background:linear-gradient(135deg,var(--sage-soft),var(--blush))}.tag{color:var(--burgundy)}.card-link{border-color:var(--gold);color:var(--burgundy)}
.checkin-summary>p,.checkin-step,.welcome-manual-card{border-color:rgba(185,154,96,.34);border-radius:18px}.checkin-code{background:var(--sage)!important}.checkin-question{background:var(--blush);color:#684c50}.step-number,.checkin-step .step-number{background:var(--cream)}.keypad-steps{background:var(--cream)}.autolock-note{border-left-color:var(--burgundy)}.welcome-manual{background:linear-gradient(135deg,var(--sage-soft),#f4ecd9)}.welcome-manual-card .wp-block-button__link{background:var(--burgundy)}
.guest-car-rental{border-radius:20px;background:linear-gradient(90deg,rgba(57,67,52,.94),rgba(57,67,52,.76)),url("assets/images/lomi-patio.jpg") center/cover}.guest-car-rental .wp-block-button__link{background:var(--burgundy)}.site-footer{background:#3d4738}.personal-box{background:#3d4738}.disclosure{background:#f7efdf}

/* v1.15 strict two-font system */
body,p,li,a,button,input,select,textarea,label,.menu,.eyebrow,.tag,.button,.wp-block-button__link,.guest-template-note,.guest-template-dates{font-family:"Manrope",sans-serif!important;font-style:normal}
h1,h2,h3,h4,h5,h6,h1 a,h2 a,h3 a,h4 a,h5 a,h6 a,.brand,.card h3,.card h3 a,.wp-block-heading,.wp-block-heading a,.wp-block-post-title,.wp-block-post-title a{font-family:"Cormorant Garamond",serif!important;font-style:normal;font-weight:600}

/* v1.16 refined check-in imagery */
.checkin-image img[alt="The home viewed from the street"],.checkin-image img[alt="Reserved parking and walking route marked in blue"]{display:block;height:auto;max-height:none;object-fit:contain;margin:24px auto 4px;padding:9px;background:#fffaf1;border:1px solid rgba(185,154,96,.42);border-radius:14px;box-shadow:0 14px 36px rgba(78,65,51,.10)}
.checkin-image img[alt="The home viewed from the street"]{width:min(100%,620px)}.checkin-image img[alt="Reserved parking and walking route marked in blue"]{width:min(100%,700px)}
@media(max-width:800px){.checkin-image img[alt="The home viewed from the street"],.checkin-image img[alt="Reserved parking and walking route marked in blue"]{width:100%;padding:5px;margin-top:18px;border-radius:10px}}

/* v1.17 matched check-in image widths */
.checkin-image img[alt="The home viewed from the street"],.checkin-image img[alt="Reserved parking and walking route marked in blue"]{width:min(100%,540px)}

/* v1.17.2 — lighter version of the original two-font system */
body,p,li,a,input,select,textarea,label,.menu,.guest-template-note,.guest-template-dates{font-weight:300}
h1,h2,h3,h4,h5,h6,h1 a,h2 a,h3 a,h4 a,h5 a,h6 a,.brand,.card h3,.card h3 a,.wp-block-heading,.wp-block-heading a,.wp-block-post-title,.wp-block-post-title a{font-weight:400!important}
.eyebrow,.tag,.button,.wp-block-button__link,button,strong,b,.checkin-code strong{font-weight:500}

/* v1.17.5 simple, non-clickable guest header */
.single-lomi_guest .site-header .nav{justify-content:center}.single-lomi_guest .site-header .brand,.single-lomi_guest .site-footer .brand{cursor:default}

/* v1.17.12 readable, centered guest footer */
.single-lomi_guest .site-footer .footer-row{display:block;text-align:center}.single-lomi_guest .site-footer .brand{display:inline-block;color:#fffaf1!important}.single-lomi_guest .site-footer p{margin:8px 0 0;color:#eee5d4!important}
