/* Couleurs et éléments graphiques extraits du flyer Kau’Wahi. */
:root{--ink:#183d40;--turq:#008e91;--pink:#f02b86;--paper:#f1fcfb;--berry:#a80b50}
body{background:#d1efed url('assets/feuillage-turquoise.webp') repeat;background-size:840px auto;font-size:17px}
h1,h2,h3{font-family:'Trebuchet MS',Outfit,Arial,sans-serif;font-weight:800;letter-spacing:-.035em}
header{padding:8px 6%;min-height:145px;background:#ffffffed;border-bottom:4px solid var(--turq);gap:30px}
.brand{display:block;flex:0 0 136px}.brand img{width:136px;height:136px;object-fit:contain;display:block}
nav{gap:35px;font-weight:700;font-size:16px}.button{background:var(--turq);font-size:16px;border:2px solid #006b6c;box-shadow:3px 3px 0 #006b6c26;padding:14px 25px}.button:hover{background:#006b6c}.button.small{background:var(--berry);border-color:var(--berry)}
.hero{position:relative;padding:60px 6% 100px;gap:50px;min-height:610px;background:linear-gradient(90deg,#faffffeb,#faffffc2 45%,#faffff20),url('assets/feuillage-cadre.webp') center/100% 100% no-repeat;overflow:hidden}
.hero-copy{position:relative;z-index:1;padding:25px 0}.hero h1{font-size:clamp(42px,4.7vw,67px);line-height:1.1;max-width:660px}.hero h1 em{color:var(--turq);display:inline-block}.hero-copy>.eyebrow{display:inline-block;background:var(--turq);color:white;border-radius:50px;padding:8px 19px;letter-spacing:.13em;transform:rotate(-3deg);margin-bottom:25px;font-size:14px}.hero .intro{font-size:18px;font-weight:500;max-width:480px}.hero .text-link{color:var(--berry)}
.hero-photo{height:385px;position:relative;max-width:650px}.hero-photo .food-photo{width:100%;height:100%;border:8px solid white;border-radius:35px;object-fit:cover;box-shadow:12px 12px 0 #008e9140;transform:rotate(2deg)}
.hero-photo .hero-tiki{position:absolute;width:145px;height:auto;border:0;border-radius:0;object-fit:contain;bottom:-98px;right:2px;z-index:2;filter:drop-shadow(2px 5px 4px #12373833)}
.photo-label{left:-12px;bottom:-20px;background:#f9d357;color:#143f40;border-radius:50px;box-shadow:3px 4px 0 #006b6c;border:2px solid #006b6c;padding:12px 20px;font-size:14px;z-index:3}.hero-note{font-size:14px;gap:15px;margin-top:30px;font-weight:600}.hero-note span+span{padding-left:15px}
.ribbon{background:var(--turq);color:white;font-size:16px;font-weight:700;border-top:2px solid #007778;border-bottom:2px solid #007778}.ribbon span{color:#ffd955}
.menu-section{padding:70px 6%;background:transparent}.section-heading{background:var(--turq);color:white;padding:28px 35px;border-radius:24px;margin-bottom:35px;align-items:center;box-shadow:5px 6px 0 #007b7b28}.section-heading h2{font-size:45px;margin-bottom:0}.section-heading .eyebrow{margin-bottom:10px;font-size:14px}.section-heading>p{margin:0;font-size:17px}
.menu-layout{gap:30px;grid-template-columns:.9fr 1.25fr;align-items:start}.compose{background:#f9fffee8;border:3px solid var(--turq);padding:30px;border-radius:28px;box-shadow:5px 6px 0 #008e9130}.compose h3{color:var(--turq);font-size:30px}.compose .eyebrow{display:inline-block;background:#163537;color:white;border-radius:8px;padding:5px 12px;font-size:14px;margin-bottom:15px}.compose>p:not(.eyebrow):not(.fine){font-size:17px}.prices{gap:8px;padding:18px 0}.prices span{font-size:14px}.prices strong{font-size:23px;color:var(--turq)}.fine{font-size:14px}.compose>.fine{font-weight:600}
.signatures{background:#f9fffee8;border:3px solid var(--turq);border-radius:28px;padding:25px 30px;box-shadow:5px 6px 0 #008e9130}.menu-title{flex-wrap:wrap;gap:8px;margin-bottom:12px}.menu-title h3{background:var(--turq);color:white;font-size:26px;padding:8px 18px;border-radius:50px;margin:0}.menu-title>span{font-size:14px;font-weight:700}.recipe summary{font-size:17px;gap:12px;flex-wrap:wrap;color:#006b6c;padding:16px 0}.recipe-price{font-size:14px;color:var(--ink);margin-left:auto}.recipe p{font-size:16px;line-height:1.65}summary{font-size:16px}details p{font-size:16px}
.formulas{border:3px solid var(--turq);border-radius:25px;background:#f9fffee8;padding:28px;gap:25px}.formulas h3{color:var(--turq);font-size:25px}.formulas b{font-size:17px}.formulas p{font-size:16px}
.desserts{background:#fbe8f0 url('assets/feuillage-rose.webp') repeat;background-size:840px auto;padding:55px 6%;border-top:7px solid var(--pink);border-bottom:7px solid var(--pink)}
.dessert-intro{position:relative;background:var(--pink);color:white;padding:32px 40px;border-radius:28px;grid-template-columns:1.3fr .65fr;gap:35px;overflow:visible}.dessert-intro h2{font-size:clamp(38px,4.5vw,62px);line-height:1.08;margin-bottom:18px}.dessert-intro h2 em{color:#fff3aa}.dessert-intro .eyebrow{font-size:14px;margin-bottom:15px}.dessert-intro>div>p:last-child{font-size:18px;max-width:620px;margin-bottom:0}.dessert-intro>img{border:5px solid white;max-width:245px;box-shadow:5px 6px 0 #a80b5066}
.dessert-tiki{position:absolute!important;width:120px!important;max-width:none!important;height:auto;right:-10px;bottom:-72px;border:0!important;border-radius:0!important;box-shadow:none!important;filter:drop-shadow(2px 5px 4px #12373826)}
.sweet-grid{gap:24px;margin-top:60px;grid-template-columns:1.15fr 1fr 1fr}.sweet-grid article{padding:23px;background:#faffffe8;border:3px solid var(--pink);border-radius:28px;box-shadow:5px 6px 0 #ed25862b}.sweet-grid .number{font-weight:800;color:var(--berry);font-size:14px}.sweet-grid h3{font-size:23px;color:white;background:var(--berry);border-radius:20px;padding:12px 15px;flex-wrap:wrap;gap:8px;line-height:1.2}.sweet-grid h3 span{font-size:20px}.sweet-grid p{font-size:16px}.sweet-grid dl{font-size:16px}.sweet-grid dl div{flex-wrap:wrap;gap:8px}.sweet-grid dd{font-weight:700;color:var(--berry)}.desserts>.fine{background:#fff9fcde;padding:12px 18px;border-radius:15px;font-size:14px}
.drinks{position:relative;background:#fff8fbbf;padding:50px 6%;grid-template-columns:1fr 1.3fr;gap:50px;border-bottom:5px solid var(--pink)}.drinks-heading{display:flex;align-items:center;gap:20px}.drinks-heading h2{font-size:40px;max-width:230px;color:var(--berry);margin-bottom:0}.drinks-heading img{width:125px;height:auto;max-width:35%}.drinks>div>p{font-size:16px}.drinks summary{color:var(--berry)}
.contact{background:#056b70;padding:60px 6%;gap:55px}.contact h2{font-size:clamp(38px,4vw,56px)}.contact .eyebrow{color:#b4f0e8;font-size:14px}.button.light{background:#f8c4d8;border-color:#f8c4d8;color:#183d40}.button.light:hover{background:#fff0bd}.contact .text-link{color:white}.contact .email{overflow-wrap:anywhere}.visit img{height:380px;object-position:50% 48%;border-radius:30px;border:6px solid #d3f2ef;box-shadow:8px 8px 0 #004d5066}.visit p{font-weight:600;font-size:24px}footer{background:#ffffffed}footer>.fine{font-size:14px}.mobile-call{background:#f0fbf9}
@media(min-width:1600px){header,.hero,.menu-section,.desserts,.drinks,.contact,footer{padding-left:max(6%,calc((100vw - 1400px)/2));padding-right:max(6%,calc((100vw - 1400px)/2))}}
@media(max-width:1000px){header{gap:20px}.brand{flex-basis:110px}.brand img{width:110px;height:110px}nav{gap:20px}.hero{gap:30px;padding-top:40px;padding-bottom:95px;min-height:540px}.hero h1{font-size:49px}.hero-photo{height:340px}.hero-photo .hero-tiki{width:125px}.section-heading h2{font-size:38px}.menu-layout{gap:22px}.compose,.signatures{padding:24px}.sweet-grid{grid-template-columns:1fr 1fr}.sweet-grid article:first-child{grid-column:1/-1}.dessert-intro{padding:28px}.dessert-intro>img{max-width:210px}.contact{gap:30px}.drinks-heading{gap:12px}.drinks-heading h2{font-size:34px}}
@media(max-width:650px){header{padding:8px 6% 16px;gap:10px;min-height:0}.brand{flex-basis:100px}.brand img{width:100px;height:100px}header nav{font-size:14px;padding-top:10px;border-top:1px solid #008e9125;gap:12px}.button.small{font-size:14px;padding:10px 23px}.hero{grid-template-columns:1fr;padding:25px 6% 100px;gap:30px;background:linear-gradient(#ffffffba,#ffffff85),url('assets/feuillage-cadre.webp') center/100% 100% no-repeat}.hero-copy{padding:12px 0}.hero h1{font-size:clamp(40px,8.5vw,54px);line-height:1.08}.hero .intro{font-size:17px}.hero-copy>.eyebrow{font-size:13px;padding:7px 15px;margin-bottom:20px}.hero .actions{gap:18px;margin-top:25px}.hero .text-link{font-size:15px}.hero-note{gap:10px;font-size:14px;margin-top:25px}.hero-note span+span{padding-left:10px}.hero-photo{height:285px;margin-right:8px}.hero-photo .food-photo{border:6px solid white;border-radius:25px}.hero-photo .hero-tiki{width:105px;bottom:-65px;right:-6px}.photo-label{font-size:12px;padding:9px 13px;left:-3px;bottom:-16px;max-width:75%}.ribbon{font-size:14px;gap:18px;padding:16px}.menu-section{padding:45px 5%}.section-heading{padding:25px;border-radius:22px;margin-bottom:28px}.section-heading h2{font-size:36px;margin-bottom:20px}.section-heading>p{font-size:16px}.menu-layout{grid-template-columns:1fr;gap:26px}.compose,.signatures{padding:22px}.compose h3{font-size:28px}.prices strong{font-size:21px}.menu-title h3{font-size:23px}.menu-title>span{font-size:14px}.recipe summary{flex-wrap:wrap;font-size:17px}.recipe-price{font-size:14px;margin-left:0}.formulas{padding:24px;grid-template-columns:1fr;gap:20px}.formulas p{font-size:16px}.desserts{padding:40px 5%}.dessert-intro{grid-template-columns:1fr;padding:25px;gap:25px}.dessert-intro h2{font-size:43px}.dessert-intro>div>p:last-child{font-size:17px}.dessert-intro>img{width:190px;max-width:70%;justify-self:start}.dessert-tiki{width:110px!important;right:-2px;bottom:-48px}.sweet-grid{grid-template-columns:1fr;gap:22px;margin-top:60px}.sweet-grid article:first-child{grid-column:auto}.sweet-grid article{padding:22px}.sweet-grid h3{font-size:23px}.sweet-grid h3 span{font-size:19px}.drinks{padding:40px 6%;grid-template-columns:1fr;gap:20px}.drinks-heading h2{font-size:35px;max-width:260px}.drinks-heading img{width:100px}.contact{padding:45px 6%;grid-template-columns:1fr;gap:35px}.contact h2{font-size:44px}.visit img{height:360px}.contact address{font-size:18px}.contact .actions{gap:20px}.contact>div>p:last-child{font-size:16px}footer{padding-bottom:115px}.mobile-call a{font-size:14px;padding:12px 7px}.mobile-call a:first-child{background:var(--turq);color:white}}
@media(max-width:370px){.hero-note{flex-direction:column;gap:5px}.hero-note span+span{padding-left:0;border-left:0}.hero h1{font-size:38px}.hero-photo{height:250px}.photo-label{font-size:11px}.prices strong{font-size:19px}.drinks-heading h2{font-size:29px}.dessert-intro>img{width:160px}}
