/*
Theme Name: CalmCook
Version: 1.0.0
Description: A bespoke accessible CalmCook website with original recipe photography and KAI guide.
Author: KSJ Growth
*/
:root{--cream:#fbf6ed;--paper:#fffdf8;--ink:#36231c;--muted:#715d51;--orange:#b44728;--sage:#dee6d7;--line:#dfd5c7;--serif:Georgia,'Times New Roman',serif;--sans:'Trebuchet MS',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:hover{text-decoration:underline}img{max-width:100%;object-fit:cover}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--orange);outline-offset:5px}header{display:flex;align-items:center;justify-content:space-between;padding:22px 6%;border-bottom:1px solid var(--line);gap:24px}header img,footer img{object-fit:contain;display:block}nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:bold}.small-button{border:1px solid var(--ink);border-radius:30px;padding:12px 22px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center;min-height:770px;padding:65px 6% 95px;overflow:hidden}.eyebrow{font-size:10px;font-weight:bold;letter-spacing:1.7px;line-height:1.8}.hero .eyebrow{display:flex;gap:10px;align-items:center}.eyebrow span{width:7px;height:7px;background:var(--orange);border-radius:50%}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:normal;letter-spacing:-3px;line-height:1.03}h1{font-size:clamp(76px,8.2vw,128px);margin:22px 0 26px}em{font-family:var(--serif);font-weight:normal;color:var(--orange)}h2{font-size:clamp(42px,4.6vw,70px);margin:20px 0 28px}.intro{font-size:22px;line-height:1.5;margin-bottom:18px}.description{color:var(--muted);line-height:1.8}.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--orange);color:white;padding:17px 25px;border-radius:30px;font-weight:bold;font-size:13px;box-shadow:0 5px 0 #76351c22;transition:transform .2s}.button:hover{transform:translateY(-3px);text-decoration:none}.button span{font-size:19px}.text-link{font-size:12px;border-bottom:1px solid #b9a799;padding-bottom:5px}.release-note{font-size:11px;color:var(--muted);margin-top:25px}.hero-visual{position:relative;min-height:570px;display:flex;align-items:center;justify-content:center}.halo{position:absolute;width:95%;height:95%;border-radius:50%;background:#e7ebdd;transform:rotate(-14deg)}.hero-meal{width:94%;aspect-ratio:1;object-fit:cover;border-radius:48% 49% 43% 45%;transform:rotate(-7deg);box-shadow:12px 23px 30px #47301822;animation:float 9s ease-in-out infinite}.food-note{position:absolute;left:0;bottom:4%;background:var(--paper);padding:19px 25px;border:1px solid var(--line);border-radius:12px;transform:rotate(-5deg);box-shadow:6px 7px 0 #b6bea250}.food-note span,.food-note a{display:block;font-size:10px;color:var(--muted)}.food-note strong{font-family:var(--serif);font-size:24px;font-weight:normal}.floating-bowl{position:absolute;right:-8px;top:-15px;text-align:center;transform:rotate(10deg)}.floating-bowl img{display:block}.floating-bowl span{font-size:12px;font-weight:bold}.handwritten{position:absolute;right:7%;bottom:-23px;font-family:var(--serif);font-style:italic;font-size:20px;color:var(--orange);transform:rotate(-8deg)}.ribbon{display:flex;align-items:center;justify-content:space-around;gap:20px;flex-wrap:wrap;background:var(--sage);padding:24px 6%;font-size:12px}.ribbon b{color:var(--orange);font-size:20px}.section{padding:105px 7%}.how{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:9%;background:var(--paper)}.phone-column{text-align:center}.phone{width:300px;max-width:100%;height:596px;padding:10px;margin:auto;border-radius:46px;background:#302b27;box-shadow:8px 12px 0 #b5b8a7,25px 35px 60px #55443230;transform:rotate(-5deg);position:relative}.camera{position:absolute;top:17px;width:90px;height:19px;background:#302b27;border-radius:15px;left:50%;transform:translateX(-50%);z-index:2}.phone-screen{height:100%;overflow-y:auto;scrollbar-width:none;border-radius:36px;background:var(--cream);text-align:left}.phone-content{padding:35px 16px 20px;animation:phonescroll 28s ease-in-out infinite alternate}.phone:hover .phone-content,.phone:focus-within .phone-content{animation-play-state:paused}.phone-logo{width:145px;display:block;margin:0 auto 30px}.phone-eyebrow{font-size:8px;letter-spacing:1.2px;font-weight:bold}.phone h3{font-size:27px;font-family:var(--serif);line-height:1.13;font-weight:normal;margin-bottom:15px}.phone p:not(.phone-eyebrow){font-size:10px}.phone-tabs{font-size:9px;padding:8px 0;border-top:1px solid var(--line);margin-bottom:12px}.phone-card{border-radius:13px;overflow:hidden;background:white;margin-bottom:14px;box-shadow:0 3px 8px #3023180b}.phone-card img{width:100%;height:138px;display:block}.phone-card div{padding:10px 12px}.phone-card small{font-size:8px;color:var(--muted)}.phone-card strong{font-size:12px;display:block;line-height:1.3}.phone-end{font-size:10px}.phone-caption{margin:35px 0 8px;font-size:10px;color:var(--muted)}.motion-button{border:0;border-bottom:1px solid var(--muted);color:var(--muted);background:none;font-size:11px;padding:3px}.lead{font-size:18px;color:var(--muted);line-height:1.8}.steps{list-style:none;padding:0;margin:35px 0 0}.steps li{display:flex;gap:25px;padding:20px 0;border-top:1px solid var(--line)}.steps>li>span{font-size:12px;color:var(--orange);padding-top:3px}.steps h3{font-family:var(--serif);font-weight:normal;font-size:24px;line-height:1.25;margin:0 0 8px}.steps p{font-size:13px;color:var(--muted);margin:0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px}.section-heading>p{font-size:13px;color:var(--muted);margin-bottom:30px}.recipe-controls{margin-top:30px}.search-label{font-size:11px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}.search-label input{width:330px;max-width:100%;border:1px solid #c3b7a5;border-radius:24px;background:var(--paper);padding:12px 18px;font-size:13px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.filters button,.outline-button{padding:11px 19px;border:1px solid #b5a793;border-radius:30px;background:none;color:var(--ink);font-size:12px}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.result-count{font-size:11px;color:var(--muted);margin:16px 0}.recipe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 25px}.recipe-card{padding:0;background:none;border:0;color:inherit;text-align:left;min-width:0}.recipe-photo{position:relative;overflow:hidden;border-radius:18px;margin-bottom:17px}.recipe-photo img{width:100%;aspect-ratio:1.2;display:block;transition:transform .5s}.recipe-card:hover img{transform:scale(1.04)}.recipe-photo>span{position:absolute;right:13px;bottom:13px;border-radius:50%;background:var(--paper);width:35px;height:35px;display:grid;place-items:center}.recipe-card h3{font-family:var(--serif);font-weight:normal;line-height:1.2;font-size:26px;margin:7px 0 10px}.recipe-card p{font-size:12px;color:var(--muted);line-height:1.65}.recipe-card .eyebrow{font-size:9px;color:var(--orange)}#more-recipes{display:block;margin:35px auto 20px}.recipe-note{font-size:10px;text-align:center;color:var(--muted);max-width:600px;margin:20px auto 0}.breathing{background:var(--sage);text-align:center}.breathing h2{max-width:900px;margin:25px auto 55px}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.benefits span{width:54px;height:54px;border:1px solid #9da88f;border-radius:50%;display:grid;place-items:center;margin:0 auto 22px;font-family:var(--serif);font-size:21px}.benefits h3{font-family:var(--serif);font-size:25px;font-weight:normal;line-height:1.3}.benefits p{font-size:13px;color:#4c5943;max-width:270px;margin:auto}.plus{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;align-items:center}.plus>div>p:last-child{font-size:12px;color:var(--muted)}.check-list{list-style:none;padding:0;margin:25px 0}.check-list li{border-top:1px solid var(--line);padding:13px 0;font-size:13px}.check-list li:before{content:'✓';color:var(--orange);margin-right:15px}.plus-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:40px;text-align:center;box-shadow:10px 10px 0 #e4dfd3;transform:rotate(2deg)}.plus-card h3{font-family:var(--serif);font-weight:normal;font-size:40px;line-height:1.2;margin:20px 0}.plus-card p{font-size:12px}.price{font-family:var(--serif);font-size:50px;line-height:1.1}.price span{font-family:var(--sans);font-size:13px}.plus-card .button{margin:15px 0 22px;display:flex}.plus-card small{display:block;color:var(--muted);font-size:10px}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:9%;background:var(--paper)}details{border-bottom:1px solid var(--line);padding:22px 0}summary{font-size:16px;cursor:pointer;line-height:1.5}details p{font-size:13px;color:var(--muted);margin:18px 0 0}details a{text-decoration:underline}.closing{text-align:center}.closing h2{font-size:clamp(58px,6.5vw,90px)}.closing>img{object-fit:contain}.closing p:not(.eyebrow){color:var(--muted);font-size:14px}.closing .eyebrow{margin-top:24px}footer{border-top:1px solid var(--line);padding:35px 6%;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:25px;font-size:11px}footer p{margin:0}footer>div{display:flex;gap:20px;flex-wrap:wrap}footer button{border:0;background:none;text-decoration:underline;color:inherit;font-size:inherit}footer small{width:100%;color:var(--muted)}.skip{position:absolute;top:-80px;left:20px;background:white;color:var(--ink);padding:15px;z-index:20}.skip:focus{top:12px}.paused *{animation-play-state:paused!important}.large-text{font-size:19px}.large-text p,.large-text li,.large-text summary{font-size:max(1em,16px)}#kai-launcher{position:fixed;right:22px;bottom:20px;background:var(--ink);color:white;border:1px solid #ffffff40;border-radius:40px;box-shadow:0 7px 30px #30231c33;padding:10px 18px 10px 10px;display:flex;align-items:center;gap:12px;z-index:20;text-align:left;font-size:13px}#kai-launcher small{display:block;font-size:8px;color:#ede2d2}#kai-launcher b{margin-left:15px;font-size:17px}.kai-mark{background:#ecd7be;color:var(--ink);width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:24px}#kai-panel{position:fixed;right:22px;bottom:100px;width:370px;max-width:calc(100% - 28px);max-height:calc(100dvh - 125px);overflow-y:auto;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 12px 70px #30231c40;z-index:25;padding:22px}#kai-panel[hidden]{display:none}.kai-header{display:flex;justify-content:space-between;align-items:start}.kai-header h2{font-size:30px;letter-spacing:-1px;margin:8px 0 15px}.kai-header .eyebrow{font-size:8px;margin:0}.kai-header button,#recipe-close{border:0;background:none;font-size:26px;color:var(--ink)}.kai-disclosure{font-size:10px;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:14px}#kai-messages{max-height:270px;overflow-y:auto;font-size:13px;white-space:pre-wrap}.kai-answer{padding:13px;background:#f1eadd;border-radius:12px;line-height:1.65}.kai-question{padding:12px;background:var(--sage);border-radius:12px;margin-left:25px}.kai-suggestions{display:flex;flex-wrap:wrap;gap:7px}.kai-suggestions button{background:none;border:1px solid #c3b7a5;border-radius:20px;padding:6px 10px;font-size:10px;color:var(--ink)}#kai-form label{display:block;font-size:10px;margin:15px 0 5px}#kai-form>div{display:flex;gap:8px}#kai-input{width:100%;min-width:0;border:1px solid #b5a793;border-radius:20px;padding:10px;font-size:13px;background:white}#kai-form button{background:var(--orange);color:white;border:0;border-radius:50%;width:40px;flex-shrink:0}#kai-clear{border:0;background:none;color:var(--muted);text-decoration:underline;font-size:9px;margin-top:10px}dialog{max-width:600px;width:calc(100% - 32px);max-height:85dvh;border:1px solid var(--line);border-radius:20px;background:var(--paper);padding:30px;color:var(--ink)}dialog::backdrop{background:#30231caa}#recipe-close{float:right}#recipe-detail img{width:100%;height:240px;border-radius:15px;display:block;margin:10px 0 20px}#recipe-detail h2{font-size:36px;letter-spacing:-1px}#recipe-detail p{font-size:14px}#recipe-detail .recipe-note{font-size:11px;text-align:left}.no-results{grid-column:1/-1;padding:40px 0}@keyframes float{50%{transform:translateY(-12px) rotate(-4deg)}}@keyframes phonescroll{0%,12%{transform:translateY(0)}88%,100%{transform:translateY(-760px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}@media(max-width:950px){nav{gap:18px}.small-button{display:none}.hero{min-height:650px;padding:50px 6% 75px}.hero-visual{min-height:440px}h1{font-size:85px}.how{gap:6%}.section{padding:80px 6%}.plus{gap:7%}.food-note{padding:15px}.food-note strong{font-size:20px}}@media(max-width:700px){header{padding:17px 5%}header img{width:150px;height:40px}nav{font-size:11px}nav a:first-child,nav a:nth-child(3){display:none}.hero{grid-template-columns:1fr;padding:40px 6% 70px;gap:45px}.hero h1{font-size:88px}.intro{font-size:20px}.hero-visual{min-height:400px;max-width:490px;width:100%;margin:auto}.hero-meal{width:90%}.floating-bowl{right:0;top:-18px}.floating-bowl img{width:70px;height:70px}.handwritten{font-size:18px}.ribbon{justify-content:center;font-size:10px;gap:12px}.ribbon span:nth-of-type(n+3),.ribbon b:nth-of-type(n+2){display:none}.section{padding:65px 6%}.how,.plus,.faq{grid-template-columns:1fr;gap:55px}.how-copy{order:-1}.phone{transform:rotate(-3deg);width:280px;height:556px}.section-heading{display:block}.recipe-grid{grid-template-columns:repeat(2,1fr);gap:23px 15px}.recipe-card h3{font-size:21px}.recipe-card p{font-size:11px}.recipe-photo{border-radius:12px}.recipe-controls{margin-top:15px}.filters{gap:7px}.filters button{padding:9px 13px;font-size:11px}.benefits{grid-template-columns:1fr;gap:38px}.breathing h2{margin-bottom:40px}.benefits h3{margin-bottom:12px}.plus-card{transform:rotate(1deg);padding:30px;max-width:450px;margin:auto;width:100%}.closing h2{font-size:62px}footer{padding-bottom:115px}#kai-launcher{right:14px;bottom:14px}#kai-panel{right:14px;bottom:90px;max-height:calc(100dvh - 108px)}h2{letter-spacing:-2px}}@media(max-width:360px){.hero h1{font-size:77px}.hero-visual{min-height:350px}.food-note strong{font-size:17px}.recipe-grid{grid-template-columns:1fr}.actions{gap:18px}.phone{width:255px}.hero .eyebrow{font-size:8px}}
